Write Close
Close
Напишите нам
Telegram
WhatsApp
Viber
VK
Messenger
Сайт на любой платформе, конструкторе, CMS и даже чистом HTML возможно настроить для корректной работы с аналитикой на Яндекс.Метрике.

Ниже приведена формулировка, которая будет понятна программисту.
"При отправке заявок с сайта отправлять идентификатор посетителя Яндекс.Метрики ClientID в сделку amoCRM в отдельное поле с любым именем"

Чтобы интеграция работала корректно, есть два варианта (нужно сделать либо первое, либо второе):

1) Настроить передачу идентификатора посетителя Яндекс.Метрики ClientID в поле сделки amoCRM (поле может иметь любое имя). В большинстве случаев это не сложно. У среднего программиста на это обычно уходит от одного до трех часов. Ниже приведен код, который облегчит работу вашему программисту.

2) Настроить отправку куки (cookie) в поле сделки amoCRM (поле может иметь любое имя). Время на реализацию аналогично первому варианту.

Код, который облегчит работу программисту.
<script type="text/javascript">
    //Этот код добавляет во все формы на сайте скрытое поле, которые содержит идентификатор посетителя Яндекс.Метрики ClientID.
    //Поле имеет вид <input type="hidden" name="ClientID" value="1234567899123456789">
    //Для работы кода необходимо в переменной ya_counter_id записать идентификатор счетчика вашего сайта в Яндекс.Метрике
    //При обработке на сервере значение поля будет содержаться в переменной $_REQUEST['ClientID']
    //Значение этой переменной необходимо передать в отдельное поле в сделку в amoCRM
    (function(){
        var ya_counter_id = '51163394'; // Изменить на идентификатор счетчика вашего сайта в Яндекс.Метрике
        var ya_client_id = '';
        var setYaClientId = function (){
            var intervalYaClientId = setInterval(function(){
                try {
                    if (typeof window['yaCounter'+ya_counter_id] !== "undefined" && typeof window['yaCounter'+ya_counter_id].getClientID !== "undefined") {
                        ya_client_id = window['yaCounter'+ya_counter_id].getClientID();
                        if (!ya_client_id)
                            return;
                        var forms = document.getElementsByTagName("form");
                        for (var i = 0; i < forms.length; i++) {
                            var input = document.createElement("INPUT");
                            input.type = "hidden";
                            input.name = "ClientID";
                            input.value = ya_client_id;
                            forms[i].appendChild(input);
                        }
                        clearInterval(intervalYaClientId);
                    }
                } catch(err) {
                }
            }, 1000);
        };
        setYaClientId();
    })();
</script>