Перейти к содержанию
Форум поддержки пользователей VamShop

Работа с cookie


Рекомендуемые сообщения

Добрый день! 

Пытаюсь провести небольшой A/B тест, вставил в файл function.content_listing.php код ниже, для вывода смарти тега {$ABTest} в микрошаблонах content_listing

  $TestCookie = "ABTest";
  if (isset($_COOKIE[$TestCookie])) 
  {
  if ($_COOKIE["ABTest"] == "A") $ValueTest1 = "A"; else $ValueTest1 = "B";
  }
  else
  {
  $rand = rand(1,1000);
  if ($rand < 500) $ValueTest1 = "A"; else $ValueTest1 = "B";
  setcookie($TestCookie, $ValueTest1 ,time()+3600);
  }
  $ABTest = $ValueTest1;

 

Тег выводится, но вот незадача, если вызывать тег {$ABTest} несколько раз на странице, выводятся разные значения, иногда A, иногда B. Хотя, если я все правильно понимаю, одно и то же значение должно храниться в течении часа, не зависимо от того, с какой страницы я буду вызывать значение переменной из куков.

Почему так, что в VamShop2 не так? Вставляю аналогичный код на тестовые страницы другого сайта, при вызове с разных страниц, куки сохраняются, здесь нет.

Ссылка на сообщение
Поделиться на другие сайты

Может код кэшируется?!

Попробуйте вставлять в корзины например /app/Vendor/smarty/vam_plugins/fucntion.shopping_cart.php

Либо в самом коде что-то не так, какая-то ошибка.

Ссылка на сообщение
Поделиться на другие сайты

Проверил, в /app/Vendor/smarty/vam_plugins/fucntion.shopping_cart.php все как нужно работает, значит проблема в кешировании?

Тогда как убрать кеширование для данного тега?

Ссылка на сообщение
Поделиться на другие сайты

Значит да, кэшируется ведь всё авбслютно, кроме корзины.

А почему Вы не хотите завести свою отдельную метку, без кэша и добавляйте там любой код.

Хотя можно даже попробовать через Админку - Расширения - Тэги пользователя.

или нужно именно в content_listing вставлять?

Ссылка на сообщение
Поделиться на другие сайты

Нет, не обязательно, желательно вообще чтобы везде можно было вывести. Вы имеете в виду через расширения - теги пользователя?

Ссылка на сообщение
Поделиться на другие сайты

Да.

Создаёте свой тэг и вставляете этот код, затем в шаблон выводите, там в списке тэгов будет колонки Метка для шаблона, вроде так называется, это метка, которую надо вставть, к примеру, в Основной шаблон.

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...