Автор Тема: Правило каталога срабатывало если в cookies присутствует определенный параметр?  (Прочитано 311 раз)

25 Сентябрь 2019, 14:02:11
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
День добрый!
Подскажите как можно реализовать такой функционал.
Необходимо чтобы Ценовое правило, а именно Правило каталога
срабатывало если в cookies присутствует определенный параметр?


Т.е. например если  в cookies   присутствует определенный параметр,
то все товары отображаются со скидкой в 20%

Соответственно если в cookies такого параметра нет, то все товары отображаются без скидки.

Куда копать?
Возможно есть модуль с таким функционалом.

Заранее большое спасибо!
25 Сентябрь 2019, 16:05:24
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 33325
  • Репутация: +26771/-0
    • Просмотр профиля
В классе Product в фунции priceCalculation можно добавить переменную
$myvar = $context->cookie->myvar;и проверять ее в условиях, пример
if ($use_group_reduction && $myvar) {
25 Сентябрь 2019, 16:13:23
Ответ #2
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
25 Сентябрь 2019, 17:11:33
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 1807
  • Репутация: +49/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В классе Product в фунции priceCalculation можно добавить переменную
$myvar = $context->cookie->myvar;и проверять ее в условиях, пример
if ($use_group_reduction && $myvar) {
В контроллере лучше определить $myvar.
26 Сентябрь 2019, 08:16:19
Ответ #4
  • Ветеран
  • *****
  • Сообщений: 527
  • Репутация: +1/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В классе Product в фунции priceCalculation можно добавить переменную
$myvar = $context->cookie->myvar;и проверять ее в условиях, пример
if ($use_group_reduction && $myvar) {
В контроллере лучше определить $myvar.

Здесь?
FrontController.php
26 Сентябрь 2019, 11:08:49
Ответ #5
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
В классе Product в фунции priceCalculation можно добавить переменную
$myvar = $context->cookie->myvar;и проверять ее в условиях, пример
if ($use_group_reduction && $myvar) {
В контроллере лучше определить $myvar.
Да. Инициализация переменной в контроллере и вызов переопределенного метода priceCalculation класса Product.

Здесь?
FrontController.php