Как передать и сохранить контактный идентификатор Salesforce с помощью Gravity Forms и WordPress
My Salesforce Партнерское агентство прямо сейчас работает с корпоративной организацией над внедрением Salesforce, Marketing Cloud, Mobile Cloud и Ad Studio. Все их веб-сайты построены на WordPress Гравитация формы, фантастический инструмент для управления формами и данными, имеющий массу возможностей. Когда они развертывают кампании через Marketing Cloud в электронной почте и Mobile Cloud в SMS, мы настраиваем их учетную запись и процессы так, чтобы всегда передавать идентификатор контакта Salesforce на любую целевую страницу с формой.
Передав контактные данные, мы можем заполнить каждый Гравитация формы отправка со скрытым полем для захвата идентификатора контакта Salesforce, чтобы клиент мог экспортировать данные и импортировать обновленную информацию в свою CRM. Последующие итерации будут включать автоматическое заполнение данных, но на данный момент мы просто хотим убедиться, что данные сохранены надлежащим образом.
Есть несколько сценариев, которые мы хотим включить в эту стратегию:
- Пользователь щелкает ссылку в электронном письме, отправленном в рамках кампании по электронной почте, SMS-кампании или цикла взаимодействия с клиентом. К этому URL-адресу автоматически добавляется идентификатор контакта Salesforce с использованием переменной строки запроса с именем контактный ключ. Примером может быть:
https://yoursite.com?contactkey=1234567890
- На целевой странице может не быть формы, поэтому мы хотим сохранить идентификатор контакта Salesforce в файле cookie, чтобы его можно было извлечь позже в форме Gravity.
- На целевой странице может быть форма Gravity Forms, где мы хотим динамически заполнять скрытое поле с идентификатором контакта Salesforce.
Сохранение идентификатора контакта Salesforce в файле cookie в WordPress
Чтобы записать и сохранить идентификатор контакта Salesforce в файле cookie в WordPress, нам нужно добавить код на нашу страницу functions.php в нашей активной теме. Мы собираемся перезаписать любой идентификатор контакта Salesforce, который уже может быть в существующем файле cookie, поскольку многие компании очищают записи, удаляют дубликаты и т. Д.
function set_SalesforceID_cookie() {
if (isset($_GET['contactkey'])){
$parameterSalesforceID = $_GET['contactkey'];
setcookie('contactkey', $parameterSalesforceID, time()+1209600, COOKIEPATH, COOKIE_DOMAIN, false);
}
}
add_action('init','set_SalesforceID_cookie');
Использование этого хука установит cookie независимо от того, существует ли форма на странице. Нам также необходимо заполнить любое скрытое поле Gravity Forms, используя gform_field_value_ {имя} метод и файл cookie, если в URL-адресе нет идентификатора контакта Salesforce:
add_filter( 'gform_field_value_contactkey', 'populate_contactkey' );
function populate_utm_campaign( $value ) {
if (!isset($_GET['contactkey'])){
return $_COOKIE['contactkey'];
}
}
Это основной файл cookie, что нам выгодно.
Добавление скрытого поля идентификатора контакта Salesforce в формы Gravity
В пределах Гравитация формы форму, вам нужно добавить скрытое поле:
Тогда на вашем скрытое поле, вы захотите установить опцию Advanced, чтобы ваше поле динамически заполнялось переменной вашей строки запроса. контактный ключ. Если это звучит излишне ... это так. В случае, если посетитель блокирует отслеживание с помощью файлов cookie, мы все равно можем заполнить скрытое поле переменной querystring:
В Gravity Forms есть масса других варианты предварительного заселения которые вы также можете программно включить на их сайт.
Обновления реализации
- Удаление кеширования на страницах Gravity Forms - если Gravity Forms находится на кешированной странице, вы не будете динамически заполнять свое поле. Это известная проблема, и, к счастью, кто-то создал плагин, который гарантирует, что любая страница с формой Gravity Forms не кэшируется, Свежие формы для гравитации. Конечно, есть одна проблема, связанная с тем, что если вы загружаете форму на каждую страницу своего сайта ... это в основном отключит кеширование по всему сайту.
- Плагин для файлов cookie Gravity Forms - Есть более старый плагин, который не опубликован в репозитории WordPress, но доступен код, который вы можете добавить на свой сайт и он сохраняет любую переменную строки запроса в cookie. Я не тестировал, но похоже обработка.
- Надстройка Gravity Forms для Salesforce - Я немного разочарован тем, что Gravity Forms на данный момент не имеет официальной интеграции с Salesforce, и было бы здорово включить файлы cookie в эту реализацию. Я бы хотел, чтобы у меня было время разработать это! Они предлагают Надстройка Zapier, которую можно интегрировать с Salesforce, но я не тестировал.
В этой конфигурации мы сохраняем контактный идентификатор Salesforce в виде файла cookie и заполняем им любые данные Gravity Forms. Даже если пользователь покидает сайт и возвращается в другой сеанс, cookie устанавливается и предварительно заполняет поле Gravity Forms.