Как установить специальные параметры в Google Analytics

Я пытаюсь настроить специальный параметр и сообщить о нем в Google Analytics. Я не вижу переданных значений ни в одном отчете.

В Google Analytics для моего ресурса в настройках в разделе «Специальные параметры» я добавил специальный параметр под названием «userId» с индексом 1 (и областью действия «Пользователь»).

На основе эта страница мой скрипт отслеживания в заголовке страниц моего сайта выглядит следующим образом:

window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());

gtag('config', 'UA-XXXXXX', {
  'custom_map': {
    'dimension1': 'userId'
  }
});

var dimensionValue = <?php print $userId; ?>;
gtag('event', 'userId_dimension', {'userId': dimensionValue});

($ userId - целое число.)

В таком отчете, как «Поведение» -> «Содержание сайта» -> «Страницы», я могу выбрать дополнительный параметр, включая «userId». При выборе этого дополнительного измерения в результирующей таблице нет строк. Несмотря на то, что при проверке моих страниц код отслеживания, похоже, передает userId, а Google Analytics записывает посещения, которые передают userId.

Что я делаю неправильно?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
0
270
1

Ответы 1

Кажется, через некоторое время это разрешилось само собой.

Однако я обнаружил, что создание нескольких событий для разных настраиваемых параметров, похоже, не регистрирует эти значения.

Итак, вот что у меня получилось:

window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());

gtag('config', 'UA-XXXXXX-1', {
    'custom_map': {
        'dimension1': 'userId',
        'dimension2': 'userName',
        'dimension3': 'clientId',
        'dimension4': 'clientName'
    }
});

<?php
    if (isset($_SESSION["user"])) {
        $gt["userId"] = $_SESSION["user"]["iID"];
        $gt["userName"] = addslashes($_SESSION["user"]["tFirstName"]." ".$_SESSION["user"]["tLastName"]);
        $gt["clientId"] = 0;
        $gt["clientName"] = '';

        if (isset($_SESSION["user"]["clients"])) {
            if (isset($_SESSION["user"]["clients"][0])) {
                $gt["clientId"] = $_SESSION["user"]["clients"][0]["iID"];
                $gt["clientName"] = addslashes($_SESSION["user"]["clients"][0]["tName"]);
            }
        }
        ?>
        gtag('event', 'add_dimensions', {
            'userId' : <?php print $gt["userId"]; ?>,
            'userName' : '<?php print $gt["userName"]; ?>',
            'clientId' : <?php print $gt["clientId"]; ?>,
            'clientName' : '<?php print $gt["clientName"]; ?>'
        });
        <?php       
    }
?>

Теперь похоже, что это работает, как ожидалось.

Другие вопросы по теме