Перейти к содержимому


Фото
- - - - -

Счётчик посещений страницы "Спасибо за заказ"


  • Чтобы отвечать, сперва войдите на форум
4 ответов в теме

#1 igorro

igorro
  • Пользователь
  • 9 сообщений
  • SEO, Заказчик
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 07.06.2018 - 20:14

Добрый день!

 

Помогите, хочу сделать счётчик посещений страницы с информацией о заказе (чтобы точнее настроить аналитику).

 

Попробовал так, но что-то не проходит, всегда одно и то же значение (1):

 

        /*Для метрики - счётчик посещения страницы*/        
        $this->design->assign('visit_counter', $order->visit_counter);
        $order->visit_counter = $order->visit_counter + 1;    

 

Как лучше решить данную ситуацию?



#2 chocolate_moles

chocolate_moles
  • Фрилансер
  • 417 сообщений
  • Верстка
  • Версия CMS:2.x
  • Откуда:Санкт-Петербург

Опубликовано 07.06.2018 - 23:10

Надо обновить заказ, записав visit_counter в базу



#3 Noxter

Noxter

    Simpla Developer

  • Фрилансер
  • 6 532 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Киев

Опубликовано 08.06.2018 - 02:46

Поменяйте строки местами.

#4 igorro

igorro
  • Пользователь
  • 9 сообщений
  • SEO, Заказчик
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 08.06.2018 - 20:05

chocolate_moles, Noxter cпасибо за помощь, всё получилось :rolleyes: .
 
Может кому пригодится, что было сделано:
 
1. В БД в таблице orders добавил поле "visit_counter" (значение по-умолчанию = 0)
В api/Orders.php в запросах к базе добавить
 
$query = $this->db->placehold("SELECT ...

 

o.visit_counter 

 FROM...

 
2. В OrderView добавлен код:
 
        /*Для метрики - счётчик посещения страницы*/       
        $this->design->assign('visit_counter', $order->visit_counter);
        $this->orders->update_order($order->id, array('visit_counter'=>$order->visit_counter+1)); 

 

3. В order.tpl добавил код на срабатывание события яндекс метрики:
 
{if $order->visit_counter == 1}

<script>
var goalParams
{
    $order->visit_counter: $order->total_price,
    currency: "RUB"
}
yaCounterВАШ_АЙДИ_МЕТРИКИ.reachGoal('НАЗВАНИЕ_ЦЕЛИ', goalParams);
</script>

{/if} 

 



#5 igorro

igorro
  • Пользователь
  • 9 сообщений
  • SEO, Заказчик
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 10.06.2018 - 03:22

Поправка, в OrderView код должен быть таким:

 

        /*Для метрики - счётчик посещения страницы*/       
        $order->visit_counter = $order->visit_counter + 1;
        $this->design->assign('visit_counter', $order->visit_counter);
        $this->orders->update_order($order->id, array('visit_counter'=>$order->visit_counter));
 

 






0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых