Битрикс24. Подключение канала «Заказы с моего сайта» на примере WordPress + WooCommerce

В Битрикс24 в модуле Сквозная аналитика существует канал обращений Заказы своего магазина, который позволяет отслеживать рекламные источники и пути клиентов и добавлять эту информацию в блок сквозной аналитики в карточке сделки.

Начинаем начинать.

Само собой, настройку WordPress и WooCommerce мы рассматривать здесь не будем, считаем, что Вы молодцы и у Вас всё давно настроено и работает.

Для тестового окружения у нас установлен WordPress 5.4.1 и WooCommerce 4.1.0.

Мы использовали простой тестовый скрипт из файла script.php (для работы скрипта указали адрес портала, входящий вебхук и id пользователя в строках 4, 5 и 6 соответственно). Как работать с вебхуками описано здесь.
Содержимое файла добавили в конец файла functions.php нашей темы (В административной части WordPress перейдите в меню Внешний вид – Редактор тем выберите свою и тему, затем файл functions.php)

Сейчас наши заказы из интернет-магазина попадают в Битрикс24, но в карточке сделки в блоке сквозной аналитики грустно отображается источник Приложение.

Для подключения канала обращения мы должны выполнить шаги:
1. подключить скрипт канала обращения Свой сайт
2. создать пользовательское поле для хранения id заказа с сайта в карточке сделки
3. подключить скрипт канала обращения Заказы своего магазина

Шаг 1. Подключение скрипта канала обращения Свой сайт
Этот шаг можете пропустить, если у Вас на сайте уже подключен Виджет на сайт из модуля Контакт-центр, а если нет, то продолжаем продолжать.

В административной части WordPress перейдите в меню Внешний вид – Редактор тем выберите свою и тему. Код канала обращения нужно установить перед закрывающим тэгом , поэтому, например, выберите файл header.php
Разработчики WordPress советуют использовать дочерние темы для внесения своих изменений. Ознакомьтесь с соответствующей статьей.

В Битрикс24 откройте канал обращений Свой сайт и скопируйте js-код.

Вставьте код после открывающего тэга в открытом ранее файле heder.php и нажмите внизу страницы кнопку «Обновить файл».

Вернитесь в Битрикс24 в канал обращения Свой сайт, введите адрес Вашего сайта и нажмите кнопку Проверить готовность сайта. Если Вы всё верно сделали, в статусе проверки будет указано, что Код установлен. Не забудьте нажать кнопку Сохранить внизу страницы.

Шаг 1 завершен, переходим к следующему шагу!

Шаг 2. Создание пользовательского поля для хранения id заказа с сайта в карточке сделки
Про пользовательские поля написано в справочной документации Битрикс24, поэтому не поленитесь, прочтите статью.
Создайте пользовательское поле типа Строка и скопируйте id этого поля. Проще всего перейти в Настройки – Настройки форм и отчётов – Пользовательские поля – Список полей (в блоке Сделки) и выбрать созданное поле. В адресной строке мы увидим id поля

Вернемся в файл functions.php (В административной части WordPress перейдите в меню Внешний вид – Редактор тем выберите свою и тему, затем файл functions.php). Найдите следующую строку после комментария «//Order user field» и замените {UF_CRM} на id пользовательского поля, созданного ранее.
Должна получиться строка вида
$data[‘fields’][‘UF_CRM_1586816588943’] = $order[‘id’];
Обновляем файл.

Итак, если номер заказа из вашего интернет-магазина передаётся, то Шаг 2 завершён, двигаемся дальше.
Шаг 3. Подключение скрипта канала обращения Заказы своего магазина
Далее нам нужно поместить скрипт канала обращения Заказы своего магазина в код сайта.
В Битрикс24 возвращаемся в сквозную аналитику, открываем канал обращения Заказы своего магазина и выбираем созданное нами ранее пользовательское поле.

Откройте файл по пути {корень сайта}/wp-content/plugins/woocommerce/templates/checkout/ thankyou.php, найдите строку get_payment_method(), $order->get_id() ); ?> и вставьте перед ней следующий код:

Этот код равен тому, что предлагают скопировать из канала обращения за тем лишь отличием, что он уже включает в себя вставки кода, необходимые для получения данных о заказе WooCommerce.

Сохраните файл.

Оформите заказ в своём интернет-магазине. Заказ превратится в сделку в Битрикс24 с заполненной информацией в сквозной аналитике.

На этом всё.