ОБРАТИТЕ ВНИМАНИЕ
В настоящее время с новым кодом можно использовать новые методы JS API: https://yandex.ru/support/metrica/objects/method-reference.html
Новые методы работают только с новым кодом: https://yandex.ru/blog/metrika/novyy-kod-v-nastroykakh-schetchika
Список старых методов здесь: https://yandex.ru/support/metrica/objects/_method-reference.html
Конструкция передачи параметров с целью будет выглядет так: ym (XXXXXX, 'reachGoal', 'TARGET', {URL: document.location.href})
Нередко пользователи Метрики нас спрашивают, как определить url-адрес страницы, на которой была достигнута JavaScript-цель. Это бывает нужно, например, в тех случаях, когда форма заявки присутствует на многих страницах сайта, а создавать отдельную цель для отслеживания отправки каждой формы не хочется (или нет технической возможности, долго, на счетчике создано максимальное количество целей и так далее).
Задача:
В интернет-магазине site.ru форма заказа находится более чем на ста страницах сайта. Владелец сайта хочет начать отслеживать отправки всех этих форм. Создавать для этого 100 целей долго и неудобно. Владелец сайта обратился в Службу поддержки, где с ним поделились решением поставленной задачи.
Решение:
Браузер посетителя знает и хранит в параметре document.location.href информацию о том, на какой странице в данный момент находится посетитель, поэтому мы можем эту информацию получить и передать в Метрику с помощью параметров визитов. Для этого нужно создать одну общую JavaScript-цель, а url-адреса, на которых была эта цель достигнута, передавать в Метрику как параметры визита в момент достижения JavaScript-цели с помощью метода reachGoal:
yaCounterXXXXXX.reachGoal('ORDER', {URL: document.location.href})
где:
- XXXXXX — номер вашего счетчика
- ORDER — идентификатор вашей JavaScript-цели
- URL — параметр визита 1 уровня
- document.location.href — параметр визита 2 уровня
Код вызова метода reachGoal следует добавлять в исходный код сайта. Если у вас возникли трудности, обратитесь за помощью к вебмастеру сайта.
Как это работает?
Посетитель пришел на страницу site.ru/contacts, и браузер посетителя записал в параметр document.location.href адрес фактического нахождения (то есть site.ru/contacts). В момент достижения JavaScript-цели (например, отправил форму заказа) в Метрику передаются два уровня параметров визитов:
- URL — в первом уровне мы передаем информацию о том, что содержат данные параметры визитов. Назовем этот параметр URL, чтобы отобразить,что в этом дереве параметров содержатся URL-адреса. URL — произвольное название параметра, можно назвать его иначе (url-адрес, юрл-адрес и так далее).
- document.location.href — url-адрес страницы, на которой находился посетитель в момент достижения цели (будет получена из параметра барузера document.location.href).
Как анализировать полученные данные?
Например, в отчете «Параметры визитов» выполните сегментацию по достижению цели «Order».
После этого в отчете останутся только те визиты, в которых была достигнута цель «Order». Увидеть количество отправленных заявок с конкретной страницы можно в справа в таблице в метрике «Количество параметров визитов», а слева, в группировках — url-адреса страниц, на которых эти заявки были отправлены.
FYI
Обращаем ваше внимание, что данный кейс не является универсальным. Такой вариант будет работать при работе с одной целью, установленной на разных страницах сайта. В случае, если необходимо применить задачу для двух и более целей, то, соответственно, необходимо модернизировать этот кейс под свою задачу — добавить еще параметры визита (URL1, URL2 и так далее для каждой цели свой параметр URL).
Также стоит помнить, что конверсия в отчете «Параметры визитов» применима непосредственно к визиту. Если в рамках визита будет отправлено несколько параметров (то есть, цель достигнута на нескольких страницах), то каждому параметру будет дана одинаковая конверсия (будет дана сумма всех достижений цели).