Как передать электронное письмо в код Javascript отслеживания сайта?

Кто-нибудь здесь знает, как настроить отслеживание сайта, передав адрес электронной почты контакта в код Javascript?

Я нахожусь в Wordpress, использую родную контактную форму визуального конструктора Elementor.

Вот контактная форма: https://www.bestseo.sg/free-report/ (внизу страницы)

Я уже вставил код отслеживания сайта ActiveCampaign по всему сайту.

Однако, похоже, не запускается отслеживание сайта даже после отправки формы.

Согласно документации ActiveCampaign(https://help.activecampaign.com/hc/en-us/articles/221542267-An-overview-of-Site-Tracking), я считаю, что мне нужно добавить эту строку кода:

vgo('setEmail', 'Email_Address_Goes_Here');

над

vgo('process');

Но я не знаю, чем заменить "Email_Address_Goes_Here", чтобы позвонить по электронной почте фактического контакта после отправки формы.

Любая помощь приветствуется!

Спасибо.

2 ответа

Таким образом, плагин, используемый для вставки этих кодов JavaScript, - https://wordpress.org/plugins/header-and-footer-scripts/ - я бы посоветовал, возможно, просто продолжать его использовать и хранить скрипты в нижнем колонтитуле, чтобы это не требует слишком больших изменений.

Внутри вашего шаблона вы должны где-то вывести адрес электронной почты, откуда JS может его прочитать - например, с помощью настраиваемого атрибута данных, добавленного к элементу body.

Header.php вашей темы должен содержать что-то похожее на

<body <?php body_class(); ?>>

Измените это, чтобы добавить настраиваемый атрибут данных для хранения адреса электронной почты, введенного в:

<body <?php body_class(); ?> data-freereportemail="<?php echo !empty($_POST['form_fields']['email']) ? esc_attr($_POST['form_fields']['email']) : ''; ?>">

Если установлен параметр POST с таким именем, он будет выводиться как содержимое этого атрибута, в противном случае он просто останется пустым.

Затем измените код JavaScript, который вы вставляете через плагин, следующим образом:

var freereportemail = $('body').attr('data-freereportemail');
if( freereportemail  != '' ) {
  vgo( 'setEmail', freereportemail );
}

Это предполагает, что jQuery уже был загружен на этом этапе, но я думаю, что это, скорее всего, так.

Если атрибут содержал адрес электронной почты, то будет выполнен vgo функция трекера, если значение атрибута пусто, она просто пропустит этот вызов.

Это не самый изощренный подход, но он должен работать.

(Только если у вас есть другие формы на сайте, которые используют поле формы с таким же именем, вы можете отслеживать больше, чем предполагалось. В этом случае вам нужно будет найти какой-то дополнительный критерий, чтобы иметь возможность различать эти разные формы.)

Человек из службы поддержки AC дал мне этот код:

      jQuery('form').submit(function() {
var userEmail = jQuery("form input[type='email']").val();
vgo('setEmail', userEmail);
vgo('process');
});

Я надеюсь, что это поможет вам.

Я использую FluentForms, поэтому я просто перешел к специальной форме Custom JS/CSS, чтобы применить ее (поэтому у меня не было проблем с правильным таргетингом...)

Другие вопросы по тегам