Отслеживание целей кнопок и форм в Elementor
Отследить нажатие на кнопки и отправку форм, сделанных при помощи Elementor, в Google Analytics или Яндекс Метрике можно с помощью простых сниппетов.
Причины
Заметка создана в качестве дополнения к видеозаписи «Отслеживание нажатия кнопок и заполнения форм Elementor в Google Analytics и Яндекс Метрика» от Александра Парфилова по двум причинам.
Во-первых, код передачи целей Яндекс Метрики изменился и не совсем соответствует тому, что приведён на видео.
Во-вторых не у всех нас сайтах есть или правильно подключена библиотека jQuery
.
Этому множество причин, например, плагины кэширования, которые меняют порядок подключения скриптов при оптимизации.
Поэтому приведу также сниппет на чистом коде (ванильном JavaScript).
Сниппеты
Сниппеты — это маленькие кусочки JavaScript кода, которые вам необходимо скопировать, обернуть в теги <script>
и </script>
и вставить на ваш сайт.
На jQuery
Этот сниппет должен быть в футере сайта как можно ниже, после подключения бибилиотеки jQuery
:
jQuery(
function( $ ) {
$( '#email-button' ).on(
'click',
function() {
// Отправка в Аналитику для кода analytics.js.
ga( 'send', 'event', 'button', 'click', 'Email' );
// Отправка в Аналитику для кода gtag.js.
gtag( 'event', 'click', {
'event_category': 'button',
'event_label': 'email'
} );
// Отправка в Метрику.
ym( 'XXXXXX', 'reachGoal', 'header-email' );
}
);
$( '#contact-form' ).on(
'submit_success',
function(){
// Отправка в Аналитику для кода analytics.js.
ga( 'send', 'event', 'Lead', 'Submit', 'Contact' );
// Отправка в Аналитику для кода gtag.js.
gtag( 'event', 'Submit', {
'event_category': 'Lead',
'event_label': 'Contact'
} );
// Отправка в Метрику.
ym( 'XXXXXX', 'reachGoal', 'contact-form' );
}
);
}
);
На «ванильном» JavaScript
Этот сниппет также должен быть в футере сайта как можно ниже:
var ready = ( callback ) => {
if ( 'loading' !== document.readyState ) {
callback();
} else {
document.addEventListener( 'DOMContentLoaded', callback );
}
};
ready( () => {
document.querySelector( '#email-button' ).addEventListener( 'click', ( e ) => {
ga( 'send', 'event', 'button', 'click', 'Email' );
ym( 'XXXXXX', 'reachGoal', 'header-email' );
} );
document.querySelector( '#contact-form' ).addEventListener( 'submit_success', ( e ) => {
ga( 'send', 'event', 'Lead', 'Submit', 'Contact' );
ym( 'XXXXXX', 'reachGoal', 'contact-form' );
} );
} );
Как добавить сниппеты
Для добавления сниппетов на сайт без знания кода можно использовать либо плагин Code Snippets Extended (он не обновлялся пару лет), который рекомендует Александр в своём видео, либо плагин LuckyWP Scripts Control, который рекомендую лично я.
Если вы разбираетесь в коде и не хотите ставить лишние плагины, то сниппеты можно добавить при помощи функции wp_add_inline_script() для примера с jQuery или на хуке wp_footer для примера без jQuery внутри functions.php
вашей активной темы (дочерней темы) или внутри mu-plugins
.
На jQuery
add_action(
'wp_enqueue_scripts',
function() {
// Добавляем сниппет как зависимость от jQuery.
wp_add_inline_script( 'jquery', 'тут ваш сниппет' );
}
);
На «ванильном» JavaScript
add_action(
'wp_footer',
function() {
// Добавляем сниппет в вйтер сайта.
?>
тут ваш сниппет
<?php
}
);
Проверка целей
Для проверки правильности отправки целей в Яндекс Метрику можно использовать специальный режим отладки.
Чтобы его активировать, добавьте в конце адреса проверяемой страницы параметр _ym_debug=1
.
Откройте косноль Google Chrome комбинацией клавиш Ctrl + Shift + J (на маках ⌥ + ⌘ + J) и смотрите, что передаётся в метрику при клике на кнопки и отправку форм.
Обратите внимание на опцию Не учитывать мои визиты (Настройка → Фильтры) в Яндекс Метрике. Если она включена, выполняйте предыдущие шаги в приватном режиме браузера (инкогнито).
Для проверки правильности отправки целей в Google Analytics можно использовать специальное расширение Google Analytics Debugger под Google Chrome.
Результат его работы также можно наблюдать в консоли браузера.
Внимание!
Чтобы не мучать людей вставкой непонятных для них кодов отслеживания, мы написали плагин Events Tracker for Elementor, который сводит этот тяжелый процесс к двум кликам мышки.
Ссылки
- Отслеживание целей кнопок и форм Elementor в Google Analytics и Яндекс Метрике
- Отслеживание событий Google Аналитики через gtag,js
- Отслеживание событий Google Аналитики через analytics,js
- Cheat sheet for moving from jQuery to vanilla JavaScript
Кто голосует ниже пятёрки, поясните в комментах, что не так, что добавить или изменить, спасибо.
Единственно правильная строчка для ЯМ —
ym( 'XXXXXX', 'reachGoal', 'header-email' );
Или можно подставить стандартную —
yaCounterXXXXXX.reachGoal('header-email'); return true;
?Обе строчки являются валидно верными, но
yaCounterXXXXXX
— морально и физически устарела.Увы — не работает в моем Элементоре отслеживание кнопки. Все сделал пошагово, как указано выше + отключил cache plugin чтоб не мешал.Но GA так и не видит клика по кнопке. Если есть возможность, прошу связаться. Требуется помощь в данном вопросе
Ссылку на сайт дайте, посмотрим.
Без проблем. Но не в комментах. Напишите на почту пжлста. Я вышлю ссылки и что было сделано
Отправил!
Проблема на вашем сайте была вызвана тем, что вместо
analytics.js
вы используетеgtag.js
, соответственно все вызовыga()
надо заменить наgtag()
. Подробнее смотрите в документации.Очень признателен за помощь. Спасибо!
Пожалуйста!
Я может быть что-то упустил но ответьте плиз на вопрос, мне нужно отслеживать кнопку оплаты которая находится на странице но она не является ни гуглом ни метрикой, здесь мне нужно узнать сколько по этой кнопке уже тыкнули. И вывести эту цифру на главной странице, как это можно сделать? Тоже пользуюсь элементором
Ну это явно не по теме вопроса, тут нужен вам плагин для отслеживания кликов по кнопке, а почему не метрика или аналитика?
Ну просто мне потом суммировать все клики по всем таким кнопкам нужно. Я если честно сходу даже не вдупляю как это реализовать )) какой плаг посоветуете?
Спросите у наших ребят в чате в телеграме @elementor_ru — там точно плагин посоветуют.
Плагин классный! Ребята, магазин WP пишет что плагин заблочен с 12.05.2022, как его скачать теперь можно?
Разберемся, каталог ужесточил правила, видать наш плагин попал под раздачу — разберемся
тоже хотел скачать, попробовать. есть альтернативные источники?
Пару дней подождите, плагин проходит ревью на wp.org, источник как бы один — SVN
Попробовал плагин Events tracker for Elementor — всё равно не работают цели. Формы сделаны на Elementor Pro, если что.
Events Tracker for ElementorКак разместить в начала кода страницы? а то он внизу
А зачем он вверху) Без изменения кода никак. Все наоборот метрики и аналитики вниз убирают, чтобы PageSpeed не протерять
Этот плагин был закрыт с 12.09.2023, он более не доступен для загрузки. Причина: Проблема безопасности.
Где вы увидели, что плагин закрыт? Мы его только недавно обновляли…. Смотрите сами.
Михаил, добрый день. Плагин недоступен на данный момент к установке? Плагин уже не поддерживается? Может у Вас есть возможность поделиться плагином в обход репозитория?)
Опять они закрыли наш аккаунт … идиотизм. Плагин можно скачать по прямой ссылке пока. Постараемся восстановить.