Google Analytics не работает должным образом в проекте Aurelia TypeScript? - PullRequest
1 голос
/ 31 марта 2020

Я новичок в Google Analytics и хочу настроить его для разрабатываемого веб-сайта.

Текущая ситуация

Я настроил Google Analytics в моем проекте, добавив следующий код в index.e js, теперь код выглядит следующим образом:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-162300254-1"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'UA-162300254-1');
</script>
    <title><%- htmlWebpackPlugin.options.metadata.title %></title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="shortcut icon" href="favicon.ico">
    <base href="<%- htmlWebpackPlugin.options.metadata.baseUrl %>">
    <!-- imported CSS are concatenated and added automatically -->
  </head>
  <body aurelia-app="main">
    <% if (htmlWebpackPlugin.options.metadata.server) { %>
    <!-- Webpack Dev Server reload -->
    <script src="/webpack-dev-server.js"></script>
    <% } %>
  </body>
</html>

Поэтому я добавил в этот файл код, полученный из Google Analytics.

Кажется, это что-то вызывает, потому что теперь я вижу, что есть один активный пользователь, если я тестирую свой сайт локально.

Проблема

Я даже не вижу, какая страница посещается чаще всего, я не вижу в Google Analytics, какие страницы я посещал. На вкладке «Активные страницы» отображается только одна страница, которая, по-видимому, называется «/".

. У меня такое ощущение, что я что-то упустил при настройке, потому что это не дает мне большого понимания данных о мой сайт.

Если что-то неясно, пожалуйста, дайте мне знать.

С уважением.

Ответы [ 2 ]

1 голос
/ 03 апреля 2020

Две вещи, которые будут очень важны для вас, и ведение веб-сайта с Aurelia с любым видом Google Analytics и SEO.

Во-первых, и это главное. Вы захотите использовать Rendertron , чтобы использовать безголовый клиент для обслуживания вашего приложения aurelia. Это лучший способ для SEO собрать правильную информацию для вашего приложения aurelia.

Во-вторых, вы хотите убедиться, что Pu sh Состояние включено Вы можете сделать это, добавив следующий код ваша ваша configureRouter функция

configureRouter(config, router) {
        config.options.pushState = true;

Я использую аналитику Google для 3 моих приложений aurelia, и с обоими из них и при работе вы получите правильную информацию о каждой странице. Ранее, чтобы выполнить оба этих действия, я видел только маршрут /, о котором вы упоминали. Удачи и извините, что на ответ на ваш вопрос потребовалось два дня.

0 голосов
/ 17 апреля 2020

Поскольку ваше приложение Aurelia представляет собой одностраничное приложение, вы ведь не переключаете страницы? Что я сделал, чтобы заставить GA работать, так это то, что я вызываю функцию, которая помещает события в window.dataLayer, когда загружается новая «страница». Что-то вроде:

  public updateGTM(page: string, ...more data you want to push to goole): void {
    if (!(<any>window)['dataLayer']) {
      (<any>window)['dataLayer'] = [];
    }
    let gtmData: any = {
      "pageType": page,
      // ... what ever keys you're using
    };
    (<any>window).dataLayer.push(gtmData);
   }

, затем на своей странице при активации или присоединении вы вызываете эту функцию, и Google узнает.

То же самое относится и к любым другим типам событий, которые вы хотите отправьте, вы отправите sh их в window.dataLayer, а затем ваш скрипт аналитики отправит их в Google.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...