Ações e Filtros
O PrimoCRM expõe ações do WordPress (eventos aos quais você pode reagir) e filtros
(valores e registros que você pode modificar). Todos os ganchos usam o prefixo primocrm_.
O PrimoCRM em si não inclui nenhum código pago nem verificações de licença. Tudo o que o suplemento Pro adiciona, ele adiciona por meio dos ganchos desta página, portanto, qualquer coisa que o Pro possa fazer aqui, o seu próprio plugin também pode fazer.
Ganchos de ação (eventos)
Seção intitulada “Ganchos de ação (eventos)”Reaja a estes com add_action.
Ciclo de vida do contato
Seção intitulada “Ciclo de vida do contato”| Gancho | Argumentos | Disparado quando |
|---|---|---|
primocrm_contact_created |
$contact_id |
Um contato é criado |
primocrm_contact_updated |
$contact_id, $changed_keys |
Um contato é atualizado ($changed_keys são os nomes dos campos alterados) |
primocrm_contact_deleted |
$contact_id, $email |
Um contato é excluído (o endereço é passado porque a linha já foi removida) |
primocrm_contact_status_changed |
$contact_id, $new_status, $old_status |
O status de um contato muda |
primocrm_contact_unsubscribed |
$contact_id |
Um contato cancela a inscrição |
primocrm_contact_resubscribed |
$contact_id |
Um contato se reinscreve |
primocrm_double_optin_confirmed |
$contact_id |
Um contato confirma um link de opt-in duplo |
primocrm_contact_tag_added |
$contact_id, $tag_id |
Uma etiqueta é aplicada |
primocrm_contact_tag_removed |
$contact_id, $tag_id |
Uma etiqueta é removida |
primocrm_contact_list_added |
$contact_id, $list_id |
Adicionado a uma lista |
primocrm_contact_list_removed |
$contact_id, $list_id |
Removido de uma lista |
Engajamento e formulários
Seção intitulada “Engajamento e formulários”| Gancho | Argumentos | Disparado quando |
|---|---|---|
primocrm_form_submitted |
$form_id, $entry_id, $contact_id, $data |
Um formulário do PrimoCRM é processado |
primocrm_email_opened |
$contact_id, $campaign_id |
A abertura de um e-mail é rastreada |
primocrm_email_link_clicked |
$contact_id, $campaign_id, $url |
Um link rastreado é clicado |
Campanhas e modelos de e-mail
Seção intitulada “Campanhas e modelos de e-mail”Estes representam o lado de escrita das telas de campanha e modelo. Um plugin que adiciona suas próprias configurações a uma campanha as armazena aqui, junto à campanha que o usuário acabou de salvar.
| Gancho | Argumentos | Disparado quando |
|---|---|---|
primocrm_campaign_saved |
$campaign_id, $request, $is_new |
Uma campanha é criada ou atualizada ($request é o objeto WP_REST_Request) |
primocrm_campaigns_deleted |
$campaign_ids |
Uma ou mais campanhas são excluídas |
primocrm_email_template_saved |
$template_id, $request, $is_new |
Um modelo de e-mail é criado ou atualizado |
primocrm_health_check_tick |
nenhum | A verificação de saúde da fila de cinco minutos é executada, um espaço pronto para uso em trabalhos periódicos |
Sistema
Seção intitulada “Sistema”| Gancho | Argumentos | Disparado quando |
|---|---|---|
primocrm_loaded |
$plugin |
Durante o registro de rotas REST. Uma handshake de catálogo, não um gancho de inicialização confiável |
primocrm_automations_paused_for_handlers |
$automation_ids |
As automações foram pausadas porque um gatilho ou manipulador de ação desapareceu |
primocrm_automations_resumed_for_handlers |
$automation_ids |
Essas automações foram retomadas porque o manipulador voltou |
Exemplo:
add_action( 'primocrm_contact_created', function ( $contact_id ) { error_log( "Novo contato no PrimoCRM: {$contact_id}" );} );
add_action( 'primocrm_email_link_clicked', function ( $contact_id, $campaign_id, $url ) { // Pontuar o contato, notificar um canal, etc.}, 10, 3 );Ganchos de filtro (registros)
Seção intitulada “Ganchos de filtro (registros)”Estes coletam itens extensíveis. Receitas completas estão em Estendendo o PrimoCRM.
| Filtro | Valor | Finalidade |
|---|---|---|
primocrm_automation_triggers |
array | Registrar ou modificar gatilhos de automação |
primocrm_automation_actions |
array | Registrar ou modificar ações de automação |
primocrm_condition_options |
array (fields, operators) |
Adicionar campos e operadores ao construtor de condições |
primocrm_form_field_types |
array (tipo para classe) | Registrar tipos de campos de formulário personalizados |
primocrm_migration_sources |
array (chave para origem) | Registrar provedores de origem de migração |
primocrm_smart_code_catalog |
array | Adicionar entradas ao seletor de códigos inteligentes |
primocrm_smart_codes |
$content, $contact, $context |
Substituir seus próprios códigos inteligentes enquanto um e-mail é renderizado |
primocrm_mail_providers |
array (id para descritor) | Registrar um provedor de e-mail via API, com as configurações necessárias |
primocrm_smtp_send |
$result, $provider, $atts, $settings |
Realizar o envio para o seu provedor. Retorne null e o PrimoCRM recorrerá ao wp_mail |
primocrm_email_editors |
array (tipo para descritor) | Registrar um editor de e-mail como um tipo de modelo |
primocrm_double_optin_sources |
array de chaves | Quais origens de contato exigem opt-in duplo |
Uma entrada de catálogo sem um manipulador registrado é listada como indisponível em vez de
oculta, portanto, forneça uma string requires_plugin nomeando o que ela precisa. O PrimoCRM
exibe isso como “Requer X” e recusa a seleção.
Ganchos de filtro (dados enviados / payloads)
Seção intitulada “Ganchos de filtro (dados enviados / payloads)”O payload REST para uma campanha ou modelo, a caminho do aplicativo administrativo. Use estes para enviar seus próprios campos para uma interface que você injetou por meio das junções de JavaScript abaixo.
| Filtro | Valor | Finalidade |
|---|---|---|
primocrm_campaign_response |
$campaign, $campaign_id |
Anexar seus campos a uma resposta de campanha única |
primocrm_email_template_response |
$template, $template_id |
Anexar seus campos a uma resposta de modelo única |
primocrm_pre_send_campaign |
$taken_over, $campaign, $settings, $request |
Retornar um WP_REST_Response para assumir o envio completamente. Caso contrário, o PrimoCRM envia normalmente |
primocrm_campaign_sent_elsewhere |
$handled, $campaign |
Retornar true quando o seu código já enfileirou esta campanha, fazendo com que o construtor de filas nativo a ignore |
Marca e promoção
Seção intitulada “Marca e promoção”| Filtro | Valor | Finalidade |
|---|---|---|
primocrm_brand_name |
string | O nome da marca exibido na administração |
primocrm_brand_menu_icon |
string | O ícone do menu administrativo |
primocrm_brand |
array | O descritor da marca localizado para o aplicativo |
primocrm_show_upsell |
bool | Retornar false para remover o botão “Atualizar” do cabeçalho administrativo. O suplemento Pro faz isso para você |
primocrm_upgrade_url |
string | Para onde esse botão aponta |
primocrm_show_reports_menu |
bool | Retornar true quando você adicionar uma aba por meio de primocrm.reports.tabs, para que a barra lateral do WordPress liste Relatórios. Desativado por padrão, pois sem uma aba a tela não tem nada para exibir. O suplemento Pro faz isso para você |
Ganchos de filtro (comportamento e ajustes)
Seção intitulada “Ganchos de filtro (comportamento e ajustes)”| Filtro | Valor | Finalidade |
|---|---|---|
primocrm_send_batch_size |
int | E-mails por lote do worker de campanha |
primocrm_send_rate_per_hour |
int | Limitação de envio de campanhas |
primocrm_automation_batch_limit |
int | Linhas por lote do worker de automação |
primocrm_email_body_retention_days |
int | Por quanto tempo os corpos de e-mail renderizados são retidos |
primocrm_async_automation_delivery |
bool | Alternar a entrega assíncrona de e-mails de automação |
primocrm_auto_create_contact_status |
$status, $source |
Status para contatos criados automaticamente por gatilhos ou sincronização de usuários |
primocrm_require_postal_address |
bool | Se um endereço postal é obrigatório antes que uma campanha possa ser enviada |
primocrm_trust_proxy_headers |
bool | Se deve confiar nos cabeçalhos de proxy para o IP de quem envia nos formulários |
primocrm_migration_step_budget |
float (segundos, padrão 10) | Quanto tempo uma solicitação de importação ou migração pode trabalhar antes de retornar o controle e a próxima solicitação continuar |
Ganchos de JavaScript (wp.hooks)
Seção intitulada “Ganchos de JavaScript (wp.hooks)”O aplicativo administrativo é uma aplicação de página única em React, e esses filtros do wp.hooks
são a forma como outro plugin insere sua própria interface dentro dele. Não existem páginas de
suplementos independentes.
Cada filtro retorna descritores com um retorno de chamada mount, e não elementos React:
o aplicativo e o seu plugin podem estar executando versões diferentes do React, portanto, o PrimoCRM
fornece a você um nó DOM para que você faça a renderização por conta própria.
| Filtro | Finalidade |
|---|---|
primocrm.settings.tabs |
Adicionar uma aba à tela de Configurações |
primocrm.reports.tabs |
Adicionar uma aba a Relatórios. A tela de Relatórios e seu item de menu no aplicativo existem apenas enquanto algo tiver registrado um; para a entrada na barra lateral do WordPress, retorne também true em primocrm_show_reports_menu |
primocrm.campaigns.rowActions |
Adicionar uma ação a uma linha de campanha |
primocrm.campaignCreate.sections |
Adicionar uma seção a uma etapa numerada do assistente de campanha |
primocrm.campaignDetails.panels |
Adicionar um painel à tela de detalhes da campanha |
primocrm.emailEditor.init |
Construir o seu editor dentro do contêiner que o PrimoCRM renderiza para o seu tipo de modelo |
primocrm.emailEditor.destroy |
Desmontar esse editor novamente |