الإجراءات والمرشحات
يعرض PrimoCRM إجراءات وردبريس (أحداث يمكنك التفاعل معها) والمرشحات
(القيم والسجلات التي يمكنك تعديلها). تستخدم جميع الخطافات البادئة primocrm_.
لا يأتي PrimoCRM نفسه بأي كود مدفوع أو فحوصات ترخيص. كل ما يضيفه ملحق Pro، يضيفه من خلال الخطافات الموجودة في هذه الصفحة، لذا فإن أي شيء يمكن لـ Pro القيام به، يمكن للإضافات الخاصة بك القيام به أيضاً.
خطافات الإجراءات (الأحداث)
Section titled “خطافات الإجراءات (الأحداث)”تفاعل مع هذه الخطافات باستخدام add_action.
دورة حياة جهة الاتصال
Section titled “دورة حياة جهة الاتصال”| الخطاف | الوسائط | يتم تفعيله عندما |
|---|---|---|
primocrm_contact_created |
$contact_id |
يتم إنشاء جهة اتصال |
primocrm_contact_updated |
$contact_id, $changed_keys |
يتم تحديث جهة اتصال ($changed_keys هي أسماء الحقول التي تم تغييرها) |
primocrm_contact_deleted |
$contact_id, $email |
يتم حذف جهة اتصال (يتم تمرير العنوان لأن الصف قد تم حذفه مسبقاً) |
primocrm_contact_status_changed |
$contact_id, [status](/ar/contacts/status/), $new_status, $old_status |
تتغير حالة جهة الاتصال |
primocrm_contact_unsubscribed |
$contact_id |
إلغاء اشتراك جهة اتصال |
primocrm_contact_resubscribed |
$contact_id |
إعادة اشتراك جهة اتصال |
primocrm_double_optin_confirmed |
$contact_id |
تؤكد جهة اتصال رابط التأكيد المزدوج |
primocrm_contact_tag_added |
$contact_id, $tag_id |
تطبيق وسم |
primocrm_contact_tag_removed |
$contact_id, $tag_id |
إزالة وسم |
primocrm_contact_list_added |
$contact_id, $list_id |
الإضافة إلى قائمة |
primocrm_contact_list_removed |
$contact_id, $list_id |
الإزالة من قائمة |
التفاعل والنماذج
Section titled “التفاعل والنماذج”| الخطاف | الوسائط | يتم تفعيله عندما |
|---|---|---|
primocrm_form_submitted |
$form_id, $entry_id, $contact_id, $data |
تتم معالجة نموذج PrimoCRM |
primocrm_email_opened |
$contact_id, $campaign_id |
تتبع فتح البريد الإلكتروني |
primocrm_email_link_clicked |
$contact_id, $campaign_id, $url |
النقر على رابط متتبع |
الحملات وقوالب البريد الإلكتروني
Section titled “الحملات وقوالب البريد الإلكتروني”هذه هي جانب الكتابة لشاشات الحملات والقوالب. الملحق الذي يضيف إعداداته الخاصة إلى حملة ما يقوم بتخزينها هنا، بجوار الحملة التي قام المستخدم بحفظها للتو.
| الخطاف | الوسائط | يتم تفعيله عندما |
|---|---|---|
primocrm_campaign_saved |
$campaign_id, $request, $is_new |
يتم إنشاء حملة أو تحديثها ($request هو طلب WP_REST_Request) |
primocrm_campaigns_deleted |
$campaign_ids |
يتم حذف حملة واحدة أو أكثر |
primocrm_email_template_saved |
$template_id, $request, $is_new |
يتم إنشاء قالب بريد إلكتروني أو تحديثه |
primocrm_health_check_tick |
لا يوجد | يتم تشغيل فحص صحة طابور الانتظار كل خمس دقائق، وهو فتحة جاهزة للأعمال الدورية |
النظام
Section titled “النظام”| الخطاف | الوسائط | يتم تفعيله عندما |
|---|---|---|
primocrm_loaded |
$plugin |
داخل تسجيل مسار REST. مصافحة كتالوج، وليس خطاف إقلاع موثوق |
primocrm_automations_paused_for_handlers |
$automation_ids |
تم إيقاف الأتمتة مؤقتاً لاختفاء مشغل أو معالج إجراء |
primocrm_automations_resumed_for_handlers |
$automation_ids |
تم استئناف تلك الأتمتة لعودة المعالج |
مثال:
add_action( 'primocrm_contact_created', function ( $contact_id ) { error_log( "New PrimoCRM contact: {$contact_id}" );} );
add_action( 'primocrm_email_link_clicked', function ( $contact_id, $campaign_id, $url ) { // Score the contact, notify a channel, etc.}, 10, 3 );خطافات المرشحات (السجلات)
Section titled “خطافات المرشحات (السجلات)”تقوم هذه بجمع الأشياء القابلة للتوسيع. الوصفات الكاملة موجودة في تمديد PrimoCRM.
| المرشح | القيمة | الغرض |
|---|---|---|
primocrm_automation_triggers |
array | تسجيل أو تعديل مشغلات الأتمتة |
primocrm_automation_actions |
array | تسجيل أو تعديل إجراءات الأتمتة |
primocrm_condition_options |
array (fields, operators) |
إضافة حقول وعوامل تشغيل منشئ الشروط |
primocrm_form_field_types |
array (type to class) | تسجيل أنواع حقول نموذج مخصصة |
primocrm_migration_sources |
array (key to source) | تسجيل موفري مصادر الترحيل |
primocrm_smart_code_catalog |
array | إضافة إدخالات إلى منتقي الرموز الذكية |
primocrm_smart_codes |
$content, $contact, $context |
استبدال رموزك الذكية الخاصة أثناء عرض البريد الإلكتروني |
primocrm_mail_providers |
array (id to descriptor) | تسجيل موفر بريد إلكتروني عبر واجهة برمجة التطبيقات، مع الإعدادات التي يحتاجها |
primocrm_smtp_send |
$result, $provider, $atts, $settings |
تنفيذ الإرسال للموفر الخاص بك. قم بإرجاع null وسيعود PrimoCRM إلى استخدام wp_mail |
primocrm_email_editors |
array (type to descriptor) | تسجيل محرر بريد إلكتروني كنوع قالب |
primocrm_double_optin_sources |
array of keys | مصادر جهات الاتصال التي تتطلب التأكيد المزدوج |
يتم إدراج إدخال الكatalog الذي ليس له معالج مسجل على أنه غير متوفر بدلاً من
إخفائه، لذا امنحه سلسلة requires_plugin لتسمية ما يحتاجه. يُظهر PrimoCRM
ذلك على أنه “يتطلب X” ويرفض السماح باختياره.
خطافات المرشحات (حمولة البيانات)
Section titled “خطافات المرشحات (حمولة البيانات)”حمولة REST لحملة واحدة أو قالب واحد، في طريقها إلى تطبيق الإدارة. استخدم هذه لإرسال حقولك الخاصة إلى واجهة مستخدم قمت بحقنها من خلال طبقات JavaScript أدناه.
| المرشح | القيمة | الغرض |
|---|---|---|
primocrm_campaign_response |
$campaign, $campaign_id |
إرفاق حقولك استجابة لحملة واحدة |
primocrm_email_template_response |
$template, $template_id |
إرفاق حقولك استجابة لقالب واحد |
primocrm_pre_send_campaign |
$taken_over, $campaign, $settings, $request |
إرجاع WP_REST_Response لتولي عملية الإرسال بالكامل. أي شيء آخر وسيقوم PrimoCRM بالعمل كالمعتاد |
primocrm_campaign_sent_elsewhere |
$handled, $campaign |
إرجاع true عندما يكون الكود الخاص بك قد وضع هذه الحملة في طابور الانتظار بالفعل، بحيث يتخطاها منشئ طابور الانتظار المدمج |
العلامة التجارية والترويج
Section titled “العلامة التجارية والترويج”| المرشح | القيمة | الغرض |
|---|---|---|
primocrm_brand_name |
string | اسم العلامة التجارية المعروض في لوحة الإدارة |
primocrm_brand_menu_icon |
string | أيقونة قائمة لوحة الإدارة |
primocrm_brand |
array | وصف العلامة التجارية المترجم للتطبيق |
primocrm_show_upsell |
bool | قم بإرجاع false لإزالة زر “ترقية” من رأس لوحة الإدارة. يقوم ملحق Pro بذلك نيابة عنك |
primocrm_upgrade_url |
string | إلى أين يشير هذا الزر |
primocrm_show_reports_menu |
bool | قم بإرجاع true عند إضافة علامة تبويب من خلال primocrm.reports.tabs، بحيث تعرض الشريط الجانبي لوردبريس التقارير. معطل افتراضياً، لأنه بدون علامة تبويب لا تحتوي الشاشة على شيء لعرضه. يقوم ملحق Pro بذلك نيابة عنك |
خطافات المرشحات (السلوك والضبط)
Section titled “خطافات المرشحات (السلوك والضبط)”| المرشح | القيمة | الغرض |
|---|---|---|
primocrm_send_batch_size |
int | عدد رسائل البريد الإلكتروني لكل دفعة عمل للحملة |
primocrm_send_rate_per_hour |
int | معدل تقييد إرسال الحملات |
primocrm_automation_batch_limit |
int | عدد الصفوف لكل دفعة عمل للأتمتة |
primocrm_email_body_retention_days |
int | المدة التي يتم فيها الاحتفاظ بنصوص البريد الإلكتروني المعروضة |
primocrm_async_automation_delivery |
bool | تبديل التسليم غير المتزامن لرسائل البريد الإلكتروني الخاصة بالأتمتة |
primocrm_auto_create_contact_status |
$status, $source |
حالة جهات الاتصال التي يتم إنشاؤها تلقائياً بواسطة المشغلات أو مزامنة المستخدم |
primocrm_require_postal_address |
bool | ما إذا كان عنوان البريد مطلوباً قبل إرسال الحملة |
primocrm_trust_proxy_headers |
bool | ما إذا كان يجب الوثوق برؤوس الوكيل لعنوان IP الخاص بالمرسل في النماذج |
primocrm_migration_step_budget |
float (seconds, default 10) | المدة التي يمكن أن يستغرقها طلب استيراد أو ترحيل واحد قبل تسليم العمل ليتابع الطلب التالي |
خطافات JavaScript (wp.hooks)
Section titled “خطافات JavaScript (wp.hooks)”تطبيق لوحة الإدارة هو تطبيق تفاعلي بصفحة واحدة (SPA)، ومرشحات wp.hooks هذه هي الطريقة
التي يضع بها ملحق آخر واجهة المستخدم الخاصة به داخله. لا توجد صفحات إضافية مستقلة.
يقوم كل مرشح بإرجاع موصّفات تحتوي على رد اتصال mount، وليس عناصر تفاعلية:
قد يكون التطبيق وملحقك قاصدين إصدارات تفاعلية مختلفة، لذا يوفر لك PrimoCRM
عنصر DOM وتقوم بالرسم داخله بنفسك.
| المرشح | الغرض |
|---|---|
primocrm.settings.tabs |
إضافة علامة تبويب إلى شاشة الإعدادات |
primocrm.reports.tabs |
إضافة علامة تبويب إلى التقارير. شاشة التقارير وعنصر القائمة الخاص بها موجودان فقط عندما يقوم شيء ما بتسجيل علامة تبويب؛ وبالنسبة لإدخال الشريط الجانبي لوردبريس، قم أيضاً بإرجاع true من primocrm_show_reports_menu |
primocrm.campaigns.rowActions |
إضافة إجراء إلى صف الحملة |
primocrm.campaignCreate.sections |
إضافة قسم إلى خطوة مرقمة من معالج الحملة |
primocrm.campaignDetails.panels |
إضافة لوحة إلى شاشة تفاصيل الحملة |
primocrm.emailEditor.init |
بناء المحرر الخاص بك داخل الحاوية التي يعرضها PrimoCRM لنوع القالب الخاص بك |
primocrm.emailEditor.destroy |
إزالة ذلك المحرر مرة أخرى |