Интеграция виджета чата на разных страницах сайта с различными открытыми линиями битрикс24

Заголовок сделал таким, т.к. сам искал похожее решение, но не нашел. На самом деле речь пойдет в целом о том, каким образом отобразить на разных страницах сайта wordpress+woocommerce какого-нибудь скрипта, в нашем случае скрипта виджета чата битрикс24.

В этом чате (как и в аналогичных, тот же JivoSite) есть возможность генерации нескольких виджетов чата для одного сайта. Делается это для различных целей, к примеру для связи с определенным менеджером в зависимости от того с какой страницы было обращение. Далее создание лидов, сквозная аналитика и как следствие – более слаженная работа коллектива и CRM системы с генерацией лидов.

Настроив виджеты для отображения на определенных страницах в системе битрикс24 (делается это через вкладку CRM далее следуем в раздел Ещё и жмём по вкладке Виджет на сайт ), вы получаете несколько скриптов, с различными каналами связи.Теперь необходимо каждый скрипт запустить на предназначенной ему странице.

В системе вордпресс есть так называемая условная логика. Условные теги которой позволяют нам проверить на какой странице мы сейчас находимся. Страница может быть записью, рубрикой, категорией продукта, собственно сам продукт и т.д. На все эти случаи и существует база тегов. А проверку на соответствие можно производить как с помощью slag (короткая ссылка), либо с помощью ID страницы. Второй вариант более предпочтителен, т.к. сам слаг может и измениться, а ID изменится только в случае удаления или пересоздания страницы.

Для определения ID категории или рубрики необходимо нажать Изменить рубрику и перейти в строку браузера, там в таксономии прописан ID.

Пример категории с ID=5:

https://......php?taxonomy=category&tag_ID=5&post_type=post

Так же эту ссылку можно увидеть в строке состояния браузера (как правило снизу) при наведении на рубрику из админки в разделе Рубрики.

Похожим способом определяется ID и страницы, разница лишь в том что в таксономии страницы написано не ID=’number’, а post=’number ‘

С самими тегами можно ознакомиться в поисковиках, введя в поиске следующую фразу: conditional tags wordpress, conditional tags woocommerce Либо сразу на официальных страницах:

Условные теги wordpress

Условные теги woocommerce

Решение нашей проблемы свелось к созданию функции bitrix_chat, которая с помощью условных тегов wordpress и woocommerce проверяет принадлежность к интересующей нас странице, в случае совпадения наш код чата будет расположен в футере нашей темы, т.к. создан хук к событию –wp_footer которого прикреплена наша функция.

<?php
// bitrix_chat
function bitrix_chat() {
  if(!is_product_category( array('id_rubriki-01','id_rubriki-02')){ ?> // Условный тег проверяет не являются ли страница перечисленной в массиве, если не является, тогда подключается нижеприведенный код.
  <!-- чат для всех страниц кроме двух -->
  <script>
          //кода чата 1
  </script>
          <?php } if( is_product_category('id_rubriki-01') ) {?> // Условный тег woocommerce проверяет принадлежит ли страница к категории с определенным id
  <!-- чат 2 -->
  <script>
         //кода чата 2
  </script>
  <?php } if ( is_product_category('id_rubriki-02') ){ ?>
  <!-- чат 3 -->
  <script>
          //кода чата 3
  </script>
  <?php }
  }
  add_action( 'wp_footer', 'bitrix_chat' );

Добавить комментарий