É possível configurar formulários nativos da SharpSpring para que eles funcionem com o Ninja Forms 2.
Este artigo detalha como utilizar o Ninja Forms 2 com a SharpSpring.
Usuários com acesso:
-
Administradores
Criar Post URLs
Por conta da maneira como o Ninja Forms 2 lida com os preenchimentos, você não irá inserir o código de captura do Formulário Nativo diretamente na página. Será necessário gerar um Formulário Nativo para ter como referência, mas todas as alterações serão realizadas no arquivo functions.php do seu WordPress.
Para criar post Urls, faça o seguinte:
-
Abra uma nova aba em seu navegador
-
Nesta aba, entre na SharpSpring.
-
Na barra de ferramentas superior da SharpSpring, clique em Marketing > Conteúdo > Formulários.
-
Clique no ícone de três pontos para ir em Ações > Código Incorporado.
-
Crie o Post URL do formulário com base no código incorporado (embed code) do formulário nativo.
Esteja ciente de que o Post URL é o BaseURI mais o valor do endpoint. Como exemplo, duas das linhas do código embed do seu formulário serão semelhantes às seguintes:
__ss_noform.push(['baseURI', 'https://app-3Q4K3MJUEA.marketingautomation.services/webforms/receivePostback/MzYwNzKzMDM0BAA/']);
__ss_noform.push(['endpoint', 'f65d1953-da63-489b-8b68-9d1684a8d93b']);
Neste exemplo o Post URL seria:
https://app-3Q4K3MJUEA.marketingautomation.services/webforms/receivePostback/MzYwNzKzMDM0BAA/f65d1953-da63-489b-8b68-9d1684a8d93b/
Nota: a SharpSpring oferece Serviços Profissionais para auxiliar na codificação personalizada.
Modificar o Código do Wordpress
Para utilizar o Ninja Forms 2 com a SharpSpring, será necessário modificar o seu código do Wordpress.
Para modificar o código do Wordpress, faça o seguinte:
-
Em seu navegador, abra uma nova aba.
-
Nesta aba, faça o login no Wordpress.
-
Clique em Aparência > Editor > Funções do Tema.
-
Abra o arquivo functions.php do seu Wordpress.
-
Cole o seguinte código no arquivo functions.php:
function ninja_forms_register_example(){
add_action( 'ninja_forms_process', 'ninja_forms_example' );
}
add_action( 'init', 'ninja_forms_register_example' );
function ninja_forms_example(){
global $ninja_forms_processing;
/Form codes go here
}
6. Para cada formulário, insira o seguinte trecho de código dentro daquele bloco:
// This will capture the Ninja Form with ID of 5 within Ninja Forms. Replace 5 in the following
// line with your form's ID number.
if ($ninja_forms_processing->get_form_ID() == 5) {
// The Post URL is created from viewing your Native Form Code
// It is the BaseURI plus the form’s endpoint
// replace the URL below with your form's Post URL
$post_url = 'https://app-3QKX0X1U88.marketingautomation.services/webforms/receivePostback/MzawMLIwNDYxAwA/da19f274-8b0c-4adf-ad39-7c8356ce71e4/';
// Each value on the right is the field number defined in Ninja Forms
// Only the number needs to be change to the appropriate field number, the
// rest of the portion on the right side
// The value on the left is the field name, it can be whatever you like
// Naming it something simply will make the mapping step easier in SharpSpring
$body = array(
'first_name' => $ninja_forms_processing->get_field_value( 5 ),
'last_name' => $ninja_forms_processing->get_field_value( 6 ),
'email' => $ninja_forms_processing->get_field_value( 7 ),
'message' => $ninja_forms_processing->get_field_value( 3 ),
// The following line is required in order to grab the cookie and establish tracking. 'trackingid__sb' => $_COOKIE['__ss_tk']
);
$request = new WP_Http();
$response = $request->post( $post_url, array( 'body' => $body ) );
}
7. Para capturar formulários adicionais, adicione um bloco if diretamente abaixo do código anterior. Abaixo segue um exemplo de dois formulários sendo capturados:
function ninja_forms_register_example(){
add_action( 'ninja_forms_process', 'ninja_forms_example' );
}
add_action( 'init', 'ninja_forms_register_example' );
function ninja_forms_example(){
global $ninja_forms_processing;
// Begin capture of Form 5
// The below should be the ID of your form in Ninja Forms, in this example it is form 5
if ($ninja_forms_processing->get_form_ID() == 5) {
$post_url = 'https://app-3QKX0X1U88.marketingautomation.services/webforms/receivePostback/MzawMLIwNDYxAwA/da19f274-8b0c-4adf-ad39-7c8356ce71e4/';
// Each value on the right is the field number defined in Ninja Forms
// The value on the left is the field name, can be whatever you like
$body = array(
'first_name' => $ninja_forms_processing->get_field_value( 5 ),
'last_name' => $ninja_forms_processing->get_field_value( 6 ),
'email' => $ninja_forms_processing->get_field_value( 7 ),
'message' => $ninja_forms_processing->get_field_value( 3 ),
// The following line is required in order to grab the cookie and establish tracking. 'trackingid__sb' => $_COOKIE['__ss_tk']
);
$request = new WP_Http();
$response = $request->post( $post_url, array( 'body' => $body ) );
}
// End of form 5 capture code, if capturing another form, place a similar code block here.
//capture another form (form 8 here)
if ($ninja_forms_processing->get_form_ID() == 8) {
// The Post URL is created from viewing your Native Form Code
// It is the BaseURI plus the form’s endpoint
$post_url = 'https://app-3QKX0X1U88.marketingautomation.services/webforms/receivePostback/MzawMLIwNDYxAwA/da19f274-8b0c-4adf-ad39-7c8356ce71e4/';
// Each value on the right is the field number defined in Ninja Forms
// The value on the left is the field name, can be whatever you like
$body = array(
'first_name' => $ninja_forms_processing->get_field_value( 7 ),
'last_name' => $ninja_forms_processing->get_field_value( 9 ),
'email' => $ninja_forms_processing->get_field_value( 2 ),
'message' => $ninja_forms_processing->get_field_value( 1 ),
'trackingid__sb' => $_COOKIE['__ss_tk']
);
$request = new WP_Http();
$response = $request->post( $post_url, array( 'body' => $body ) );
}
// Place additional form codes here
}
8. Preencha e mapeie o formulário.
Esteja ciente de que se qualquer código de formulário nativo da SharpSpring já tenha sido inserido na página deste formulário anteriormente, ele deve ser removido, pois ele irá interferir. Além disso, alterações no functions.php podem resultar em erro de carregamento do site, incluindo a página de login do Wordpress. Você deve estar preparado para reverter para o seu functions.php anterior via FTP, no caso de qualquer erro impossibilite o site de carregar.
Comentários
0 comentário
Artigo fechado para comentários.