Статья о том, как интегрировать код Google Отзывы клиентов в
интернет-магазин OpenCart. Это краткий пример с инструкцией по интеграции
скрипта от гугл в файлы CMS OpenCart. Благодаря этому вы сможете получать
отзывы клиентов, уже сделавших заказ на вашем сайте. Покупатели будут
получать напоминания от Google о том, что они могут оставить отзыв о вашей
компании.
Как и куда добавить код Google Отзывы клиентов в OpenCart
Google рекомендует добавить код на страницу успешного оформления заказа на
вашем сайте, что мы сделаем. Наша инструкция подходит для OpenCart 3 и
OpenCart 4. Если же у вас OpenCart 2 – нужно конвертировать код twig в php.
1. В файле catalog/controller/checkout/success.php
сразу после строки:
if (isset($this->session->data['order_id'])) {
нужно добавить:
$this->load->model('checkout/order');
$data['order_info'] = $this->model_checkout_order->getOrder($this->session->data['order_id']);
$data['country_code'] = 'UA';
if (isset($data['order_info']['shipping_country_id'])){
$this->load->model('localisation/country');
$country = $this->model_localisation_country->getCountry($data['order_info']['shipping_country_id']);
if ($country) {
$data['country_code'] = $country['iso_code_2'];
}
}
$data['delivery_date'] = date('Y-m-d', strtotime('+7 days'));
$data['gtins'] = [];
$products = $this->model_checkout_order->getOrderProducts($this->session->data['order_id']);
if ($products) {
$eans_query = $this->db->query("SELECT ean FROM ".DB_PREFIX."product WHERE product_id IN ('".implode(', ', array_column($products, 'product_id'))."') AND ean != ''");
$data['gtins'] = $eans_query->rows;
}
2. В файле catalog/view/theme/шаблон/template/common/success.twig
перед строкой:
{{ footer }}
нужно добавить:
{% if order_info %}
<script src="https://apis.google.com/js/platform.js?onload=renderOptIn" async defer></script>
<script>
window.renderOptIn = function() {
window.gapi.load('surveyoptin', function() {
window.gapi.surveyoptin.render(
{
"merchant_id": ID_ВАШОГО_МЕРЧАНТУ,
"order_id": "{{ order_info.order_id }}",
"email": "{{ order_info.email }}",
"delivery_country": "{{ country_code }}",
"estimated_delivery_date": "{{ delivery_date }}"
{% if gtins %},
"products": [{% for gtin in gtins %}{"gtin":"{{ gtin.ean }}"}{% if not loop.last %}, {% endif %}{% endfor %}]
{% endif %}
});
});
}
</script>
{% endif %}
Следует заметить, что артикулы товаров (gtin) необязательны, поэтому если у
вас нет артикулов – вы можете их не передавать. В этом примере мы передаем артикул EAN.
3. После этого нужно обновить все возможные кэши, которые у вас есть, это
можно сделать в админке: кэш модификаторов, кэш шаблонов twig (кэш темы),
кэш специальных модулей кэширования.
4. Сделайте тестовый заказ, вы должны видеть всплывающее окно согласия на
странице успешного оформления заказа. Если вы его видите – все работает
должным образом.
В общем, как видите, интеграция скрипта Google отзывов в OpenCart является
простой задачей. Но она требует внимательности и сосредоточенности, чтобы не
допустить ошибку. Удачных продаж!