Преобразовать document.referrer как переменную в JSON

Цель: - отправить JSON в диспетчер тегов Google.

Проблема в следующем: нет доступной переменной жидкости для «реферера» согласно документации Shopify.

Возможное решение: - создать переменную с помощью Javascript

Итак, что я сделал:

  1. Я создал скрипт, который добавит URL-адрес веб-сайта, с которого пришли посетители.

  2. захватить добавленный URL-адрес веб-сайта и преобразовать его в переменную

  3. Поместите переменную {{ ref }} в JSON

Когда я проверил элемент, реферер (JSON) не имеет значения.

пожалуйста помоги

<script type = "text/javascript">
$(document).ready(function () {
    var content = document.referrer;
    $(".referrer").append(content);
});  
</script>

{% capture ref %}
<div class = "referrer">Referrer: </div>
{% endcapture %}


<script type = "text/javascript">  
dataLayer.push({
  ‘userEmail’ : ‘{{ customer.email }}’,
  ‘productCategory’ : ‘{{ collection.title }}’,
  ‘productName’ : ‘{{ product.title }}’,
  ‘price’ : ‘{{ sca_price | money }}’,
  ‘originalPrice’ : ‘{{ sca_price | money }}’,
  ‘cartItems’ : ‘{{ cart.item_count }}’,
  ‘currency’ : ‘{{ shop.currency }}’,
  ‘referrer’ : ‘{{ ref }}’, // not working
  ‘productRating’ : ‘’,
  ‘reviewCount’ : null,
  ‘event’ : null
});  
</script>
Поведение ключевого слова "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
327
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Вам не нужна переменная Shopify, чтобы найти реферера. Вам даже не нужно фиксировать его в переменной страницы и использовать. Просто обновите:

‘referrer’ : ‘{{ ref }}’, // not working

к

‘referrer’ : document.referrer,

Редактировать:

Используйте приведенный ниже код:

<script type = "text/javascript">  
    push_data = {
      'userEmail' : '{{ customer.email }}',
      'productCategory' : '{{ collection.title }}',
      'productName' : '{{ product.title }}',
      'price' : '{{ sca_price | money }}',
      'originalPrice' : '{{ sca_price | money }}',
      'cartItems' : '{{ cart.item_count }}',
      'currency' : '{{ shop.currency }}',
      'productRating' : '',
      'reviewCount' : null,
      'event' : null
    }
    push_data['referrer'] = document.referrer;
    console.info(push_data); //remove this code. This is to only check referrer is populated
    dataLayer.push(push_data);  
</script>

не работает, когда я проверяю отображаемый элемент prntscr.com/joep3g, он просто говорит «реферер»: document.referrer,

Jasper Abaricia 30.05.2018 09:16

вы можете проверить элемент здесь: ellanacosmetics.myshopify.com/collections/eyes/products/…

Jasper Abaricia 30.05.2018 09:28

Цитаты, которые вы используете, неверны. Используйте двойные кавычки вместо кавычек, которые вы сейчас используете. Javascript не распознает эти цитаты. Удалите код загрузки документа, который вы используете.

Subhrajyoti Das 30.05.2018 10:00

если это двойная кавычка, о которой вы говорите, она все еще не работает :( prntscr.com/jofdey

Jasper Abaricia 30.05.2018 10:06

Просто используйте JavaScript:

"referrer": document.referrer

не работает, когда я проверяю элемент, он показывает prntscr.com/joep3g

Jasper Abaricia 30.05.2018 09:14

Проверь это. и попробуйте проверить элемент ellanacosmetics.myshopify.com/collections/eyes/products/…

Jasper Abaricia 30.05.2018 09:15

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