Как настроить правило ценообразования для корзины покупок, исключающее товары с запланированными датами по специальной цене?

У меня есть два вида продуктов:

  1. Продукт, который продается все время и использует специальное ценовое поле без каких-либо запланированных дат.

  2. Товар, поступление в продажу которого запланировано один или два раза в год с использованием специального ценового поля и запланированных дат в будущем.

У меня есть купон, который НЕ ДОЛЖЕН применяться к продуктам, для которых активно поле специальной цены, будь то в силу того, что сегодняшняя дата попадает в поля даты до и с, или просто потому, что поле специальной цены заполнено.

Я могу легко решить для продукта 1 — добавить условие, исключающее все, что имеет специальную цену выше 0,01.

НО это не решает для продукта 2 - я не хочу исключать продукт 2, когда даты специальной цены на продукт 2 еще не наступили или истекли.

Мне не нужно ручное решение (т. е. вручную добавлять товары в категорию распродажи, когда они продаются, и удалять, когда их нет в продаже).

Я думаю о создании задания cron, чтобы вносить изменения на лету в полуавтоматическом режиме, но это кажется отчаянным. Я ничего не могу сделать, чтобы автоматизировать это на основе специальных ценовых дат?


person dstep    schedule 22.12.2014    source источник
comment
У меня точно такая же проблема! Я также попробовал решение, предложенное @Guerra, но был заблокирован проблемой today-отсутствия, о которой вы говорили. Вы нашли решение?   -  person Dr. Gianluigi Zane Zanettini    schedule 12.01.2018
comment
К сожалению, нет - и это был довольно дорогой и сложный ответ, который я получил от другого разработчика, чтобы это произошло, поэтому я просто сдался!   -  person dstep    schedule 14.01.2018
comment
Благодарю. Я разместил свое хакерское решение в качестве ответа.   -  person Dr. Gianluigi Zane Zanettini    schedule 15.01.2018


Ответы (2)


Вы можете сделать это с помощью администратора Magento.

Сначала в админке перейдите в Каталог -> Атрибуты -> Управление атрибутом -> Найдите «special_from_date» и «special_to_date».

Нажимаем на нее, ищем опцию «Использовать для условий акции» ставим «Да»

Теперь ваши даты special_from и special_to будут отображаться в разделе правил продвижения вашей корзины.

person Guerra    schedule 22.12.2014
comment
У меня установлено значение «да» на обоих, и в настоящее время я вижу их в правилах продвижения корзины. Проблема в том, что я не могу установить такое условие - специальная дата до СЕГОДНЯ (переменная, основанная на сегодняшней дате). Я могу установить только специальную дату до мм/дд/гггг (статическая дата). - person dstep; 23.12.2014

Я имею дело с точно такой же потребностью.

На данный момент я разрабатываю задание cron: оно запускается каждый день в полночь и обновляет правило end_date на сегодня(). Это хакерство, но пока выглядит многообещающе, и это намного проще и удобнее, чем возиться с внутренностями мага.

Изменить: также см. здесь -due-to-strtotim">https://magento.stackexchange.com/questions/210006/catalog-price-rules-with-date-as-conditions-cannot-possible-work-due-to-strtotim

person Dr. Gianluigi Zane Zanettini    schedule 15.01.2018