Как добавить цель на оформление заказа в Opencart 3?

В интернете есть инструкции по добавлению цели «Посещение страницы» с указанием вхождения «route=checkout/success». Но пользователь может перезагрузить страницу и цель защитается дважды.

Другой вариант

Добавить кода события на страницу об успешном оформлении заказа с проверкой на наличие id нового заказа для избежания дублирования достижения цели.

Инструкция

1. В файле /catalog/controller/checkout/success.php
перед строкой
unset($this->session->data['shipping_method']);


добавить код:
$data['order_id'] = $this->session->data['order_id'];

 

2. В файле /catalog/view/theme/моя_тема/template/common/success.twig

перед {{ footer }} или в другом подходящем месте, где нет условий и т. п.,
добавить:  

{% if order_id %}
<script>
function MetrikaZakaz() {
ym(64834153,'reachGoal','zakaz'); return true;
}
MetrikaZakaz()
</script>
{% endif %}


И поменять номер счетчика и идентификатор цели на свои.

 

В написании инструкции помог этот материал.

Добавить комментарий