ВОЗМОЖНОСТИ
Яндекс.Метрика ClientID
Передача параметра ClientID Яндекс.Метрики
Добавьте параметр {visit_id} в приветственное сообщение в разделе «Настройка виджета на сайт» настроек коннектора
Добавьте на ваш сайт код передачи параметра в виджет. Где ХХХХХХХХ — номер вашего счётчика Яндекс.Метрики
Рекомендуем размещать код сразу после кода счётчика Метрики.
<script>
const b24w = setInterval(() => {
const l = document.querySelector('[data-b24-crm-button-widget=openline_olchat_wa_connector_2]')
if (l !== null) {
clearInterval(b24w)
ym(XXXXXXXX, 'getClientID', (clientID) => l.href=l.href.replace(/\{visit_id\}/, clientID))
}
}, 250)
</script>
В некоторых случаях счётчик Яндекс.Метрики не успевает загрузиться и передать параметр clientID в {visit_id}. В этом случае нужно дополнить код счётчика параметром проверки инициализации счётчика. Для этого добавьте в код счётчика параметр triggerEvent
ym(XXXXXX, "init", {triggerEvent: true});
В данном случае код подмены параметра {visit_id} будет выглядеть так:
<script>
document.addEventListener('yacounterXXXXXXXXinited', () => {
const b24w = setInterval(() => {
const l = document.querySelector('[data-b24-crm-button-widget=openline_olchat_wa_connector_2]')
if (l !== null) {
clearInterval(b24w)
ym(XXXXXXXX, 'getClientID', (clientID) => l.href=l.href.replace(/\{visit_id\}/, clientID))
}
}, 250)
})
</script>
Если вы используете Google Tag Manager, то скорее всего вы получите ошибку при публикации тега. Дело в том, что GTM немного староват и не поддерживает современный Java Script. Чтобы всё прошло гладко, модифицируйте код следующим образом, убрав константы и стрелочные функции:
<script>
document.addEventListener('yacounterXXXXXXXXinited', function () {
var b24w = setInterval(function () {
var l = document.querySelector('[data-b24-crm-button-widget=openline_olchat_wa_connector_2]');
if (l !== null) {
clearInterval(b24w);
ym(XXXXXXXX, 'getClientID', function (clientID) {
l.href = l.href.replace(/\{visit_id\}/, clientID)
});
}
}, 250);
});
</script>
Copy link