Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Код конверсии на странице "Спасибо за покупку"


Recommended Posts

Всем привет, задача установить код в тегах <head></head> на странице после успешной покупки

 

Насколько я понимаю нужно мне сделать что-то типа
 

{% if checkout/success %}

<!-- Event snippet for Website sale conversion page --> 
<script> 
  gtag('event', 'conversion', { 
    'send_to': 'AW-2342342343656/P-i9CIjsdfsdfsdr78KMC', 
    'transaction_id': '{{ text_order_id }}' 
  }); 
</script>

{% endif %}

Этот код не работает, выдает ошибку, помогите пожалуйста пожалуйста решить
И еще один вопрос как динамически вставить номер заказа

Змінено користувачем uamassimo
Надіслати
Поділитися на інших сайтах


Вопрос по отображению кода только на странице решен.
Если кому интересно, то решение вот
В файле /catalog/controller/common/header.php добавил переменную:

$data['route'] = $this->request->get['route'];

Затем между тегами <head> </head> использовал такой код:
 

{% if route == 'checkout/success' %}

Свой код

{% endif %}

Но вот дальше не получилось отобразить номер заказа, чтобы передать его в transaction_id

Надіслати
Поділитися на інших сайтах


1 час назад, uamassimo сказал:

Вопрос по отображению кода только на странице решен.
Если кому интересно, то решение вот
В файле /catalog/controller/common/header.php добавил переменную:


$data['route'] = $this->request->get['route'];

Затем между тегами <head> </head> использовал такой код:
 


{% if route == 'checkout/success' %}

Свой код

{% endif %}

Но вот дальше не получилось отобразить номер заказа, чтобы передать его в transaction_id

 

 

у вас при каждом обновлении страницы успеха будет уходить конверсия

Надіслати
Поділитися на інших сайтах

Нужно передавать номер заказа в сессии. Потом на странице успешного заказа, если в сессии есть номер заказа - получать данные по заказу и отправлять их гугл скриптом. 

 

Надіслати
Поділитися на інших сайтах


13 часов назад, spectre сказал:

 

 

у вас при каждом обновлении страницы успеха будет уходить конверсия

 

Так а как правильно делать?

Змінено користувачем uamassimo
Надіслати
Поділитися на інших сайтах


14 часов назад, LiLu сказал:

Номер заказа из сессии нужно брать

 

13 часов назад, niger сказал:

Нужно передавать номер заказа в сессии. Потом на странице успешного заказа, если в сессии есть номер заказа - получать данные по заказу и отправлять их гугл скриптом. 

 


Как из сессии его вытащить?
Пробовал как тут, ничего не получилось

 

Надіслати
Поділитися на інших сайтах


12 минут назад, Paint сказал:

Присоединяясь к вопросу - Как настроить отслеживание конверсии перехода на страницу "Спасибо за заказ"? Куда вставлять предлагаемый гуглом тег?

 

  • +1 1
Надіслати
Поділитися на інших сайтах

В 30.07.2020 в 17:34, uamassimo сказал:

Всем привет, задача установить код в тегах <head></head> на странице после успешной покупки

 

Насколько я понимаю нужно мне сделать что-то типа
 


{% if checkout/success %}

<!-- Event snippet for Website sale conversion page --> 
<script> 
  gtag('event', 'conversion', { 
    'send_to': 'AW-2342342343656/P-i9CIjsdfsdfsdr78KMC', 
    'transaction_id': '{{ text_order_id }}' 
  }); 
</script>

{% endif %}

Этот код не работает, выдает ошибку, помогите пожалуйста пожалуйста решить
И еще один вопрос как динамически вставить номер заказа

а почему не так?

 

Надіслати
Поділитися на інших сайтах


В 31.07.2020 в 08:50, uamassimo сказал:

 


Как из сессии его вытащить?
Пробовал как тут, ничего не получилось

 

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

Вы сохраняете заказ - если сохранение успешное - перед функцией редиректа на страницу "спасибо" в сессию записываете номер заказа.

Потом в контроллере страницы "Спасибо" - проверяете есть ли в сессии номер заказа, если он есть записываете его в переменную, дальше запрос к модели "получить все данные по заказу" закидываете их в переменную для вывода и очищаете из сессии номер заказа(чтобы каждый раз клиент не видел спасибо ваш заказ такой-то оформлен) - и отправляете это во вьюху страницы "Спасибо" и там уже переменную разбираете и засовываете в скрипт от гугла все необходимые ему данные в нужном для него формате. 

 

Змінено користувачем niger
Надіслати
Поділитися на інших сайтах


1 минуту назад, niger сказал:

 

 

ой не то нажал

Змінено користувачем niger
Надіслати
Поділитися на інших сайтах


<?php if (isset($order_id) && $order_id) { ?>
    <!-- Google Analytics - Ecommerce Tracking (Universal Analytics) -->
    <script type="text/javascript">

        gtag('event', 'purchase', {
            "transaction_id": "<?php echo $order_id; ?>",
            "affiliation": "<?php echo $order_info['store_name']; ?>",
            "value": <?php echo $order_info['total']; ?>,
            "currency": "<?php echo $order_info['currency_code']; ?>",
            "tax": "<?php echo $tax; ?>",
            "shipping": "<?php echo $shipping; ?>",
            "items": [
                <?php foreach ($order_products as $row) { ?>
                {
                    "id": "<?php echo $row['model']; ?>",
                    "name": "<?php echo $row['name']; ?>",
                    "quantity": <?php echo $row['quantity']; ?>,
                    "price": '<?php echo $row['price']; ?>'
                },
                <?php } ?>
            ]
        });

    </script>


    <!-- End Google Analytics - Ecommerce Tracking (Universal Analytics) -->
    <!-- Event snippet for Покупка товара conversion page -->
    <script>
        gtag('event', 'conversion', {
            'send_to': 'Ваше из гугладвордса',
            'value': <?php echo $order_info['total']; ?>,
            'currency': '<?php echo $order_info['currency_code']; ?>',
            'transaction_id': '<?php echo $order_id; ?>'
        });
    </script>

Верхнее для view файла success.tpl

 

ниже для контроллера success.php 

		if (isset($this->session->data['order_id'])) {

            $this->load->model('account/order');

            $this->data['order_id']       = $this->session->data['order_id'];
            $this->data['order_info']     = $this->model_account_order->getOrder($this->session->data['order_id']);
            $this->data['order_totals']   = $this->model_account_order->getOrderTotals($this->session->data['order_id']);
            $this->data['order_products'] = $this->model_account_order->getOrderProducts($this->session->data['order_id']);

            $shipping = 0;

            foreach ($this->data['order_totals'] as $row)
            {
                if ($row['code'] == 'shipping')
                {
                    $shipping = $row['value'];
                }
            }

            $this->data['shipping'] = $shipping;

            $tax = 0;

            foreach ($this->data['order_products'] as $row)
            {
                $tax = $tax + $row['tax'];
            }

            $this->data['tax'] = $tax;

			$this->cart->clear();
			unset($this->session->data['shipping_method']);
			unset($this->session->data['shipping_methods']);
			unset($this->session->data['payment_method']);
			unset($this->session->data['payment_methods']);
			unset($this->session->data['guest']);
			unset($this->session->data['comment']);
			unset($this->session->data['order_id']);	
			unset($this->session->data['coupon']);
			unset($this->session->data['reward']);
			unset($this->session->data['voucher']);
			unset($this->session->data['vouchers']);
		}	

 

  • +1 1
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.