Aller au contenu

Actions et filtres

PrimoCRM expose des actions WordPress (des événements auxquels vous pouvez réagir) et des filtres (des valeurs et des registres que vous pouvez modifier). Tous les hooks utilisent le préfixe primocrm_.

Réagissez à ceux-ci avec add_action.

Hook Arguments Se déclenche lorsque
primocrm_contact_created $contact_id Un contact est créé
primocrm_contact_updated $contact_id, $changed_keys Un contact est mis à jour ($changed_keys sont les noms des champs modifiés)
primocrm_contact_status_changed $contact_id, $new_status, $old_status Le statut d’un contact change
primocrm_contact_unsubscribed $contact_id Un contact se désabonne
primocrm_contact_tag_added $contact_id, $tag_id Une étiquette est appliquée
primocrm_contact_tag_removed $contact_id, $tag_id Une étiquette est retirée
primocrm_contact_list_added $contact_id, $list_id Ajouté à une liste
primocrm_contact_list_removed $contact_id, $list_id Retiré d’une liste
Hook Arguments Se déclenche lorsque
primocrm_form_submitted $form_id, $entry_id, $contact_id, $data Un formulaire PrimoCRM est traité
primocrm_email_opened $contact_id, $campaign_id L’ouverture d’un e-mail est suivie
primocrm_email_link_clicked $contact_id, $campaign_id, $url Un lien suivi est cliqué
Hook Arguments Se déclenche lorsque
primocrm_loaded aucun Pendant l’enregistrement des routes REST. Une poignée de main du catalogue, pas un hook de démarrage fiable
primocrm_pro_downgraded Une licence Pro est perdue ou expire
primocrm_pro_resumed Une licence Pro est restaurée
primocrm_ab_evaluate_winners Le déclencheur cron qui évalue les gagnants A/B

Exemple :

add_action( 'primocrm_contact_created', function ( $contact_id ) {
error_log( "Nouveau contact PrimoCRM : {$contact_id}" );
} );
add_action( 'primocrm_email_link_clicked', function ( $contact_id, $campaign_id, $url ) {
// Évaluer le contact, notifier un canal, etc.
}, 10, 3 );

Ceux-ci rassemblent des éléments extensibles. Des tutoriels complets se trouvent dans Extension de PrimoCRM.

Filtre Valeur Objectif
primocrm_automation_triggers array Enregistrer ou modifier les déclencheurs d’automatisation
primocrm_automation_actions array Enregistrer ou modifier les actions d’automatisation
primocrm_condition_options array (fields, operators) Ajouter des champs et des opérateurs au constructeur de conditions
primocrm_form_field_types array (type vers classe) Enregistrer des types de champs de formulaire personnalisés
primocrm_migration_sources array (clé vers source) Enregistrer des fournisseurs de sources de migration
primocrm_smtp_send $result, $provider, $atts, $settings Fournir un expéditeur d’e-mails (comment les fournisseurs ESP se connectent)
primocrm_ab_manager object Fournir l’implémentation du gestionnaire de tests A/B
Filtre Valeur Objectif
primocrm_free_triggers array de clés Quels déclencheurs sont gratuits (fermé par défaut pour les autres)
primocrm_free_actions array de clés Quelles actions sont gratuites
primocrm_free_limits array Limites de comptage du plan gratuit par ressource
primocrm_upgrade_url string L’URL vers laquelle pointent les incitations à la mise à niveau
Filtre Valeur Objectif
primocrm_send_batch_size int E-mails par lot de traitement de campagne
primocrm_send_rate_per_hour int Vitesse d’envoi des campagnes
primocrm_automation_batch_limit int Lignes par lot de traitement d’automatisation
primocrm_email_body_retention_days int Durée de conservation du corps des e-mails rendus
primocrm_async_automation_delivery bool Activer ou désactiver la livraison asynchrone des e-mails d’automatisation
primocrm_auto_create_contact_status $status, $source Statut pour les contacts créés automatiquement par des déclencheurs ou la synchronisation des utilisateurs
primocrm_trust_proxy_headers bool Indique s’il faut faire confiance aux en-têtes proxy pour l’adresse IP de l’expéditeur sur les formulaires
Filtre Valeur Objectif
primocrm_brand_name string Le nom de la marque affiché dans l’administration
primocrm_brand_menu_icon string L’icône du menu d’administration
primocrm_brand array Le descripteur de marque localisé pour l’application

L’application d’administration expose deux filtres JavaScript via wp.hooks afin que les modules complémentaires puissent injecter de l’interface utilisateur. Ceux-ci renvoient des descripteurs avec des rappels de montage, et non des éléments React, car l’application et les modules complémentaires peuvent exécuter des versions de React différentes.

Filtre Objectif
primocrm.settings.tabs Ajouter un onglet à l’écran des réglages
primocrm.campaigns.rowActions Ajouter une action à une ligne de campagne