Magento: применяется правило цены корзины покупок, но скидка не вычитается из промежуточной суммы

Я создал правило цены корзины покупок в моем магазине Magento (версия 1.4.1.1), и оно, кажется, применяется без проблем во внешнем интерфейсе, но скидка фактически не отражается в промежуточной сумме или итоговой сумме. Первоначальная цена товара составляет $45,00, а скидка должна быть $35,00, а окончательная цена - $10,00. Вот несколько скриншотов установки. (Извините, поскольку я новый пользователь, он не позволит мне публиковать изображения непосредственно в этом сообщении.)

http://imgur.com/a/hdYDb

  1. Главная страница правил
  2. Страница действий
  3. Корзина показывает, что был применен промокод
  4. Проверка заказа (последний шаг перед отправкой заказа)

Этот конкретный элемент имеет несколько пользовательских параметров, которые устанавливают цены для четырех отдельных параметров. Цена продукта составляет $ 0,00, и тогда у каждого варианта есть своя собственная цена (я не устанавливал эту часть, поэтому я не уверен, что я что-то здесь тоже упустил). Вот скриншот страницы пользовательских настроек продукта: http://imgur.com/uO9HG

Какие-нибудь мысли? Я довольно новичок в Magento, так что возможно я просто упускаю что-то очевидное. Заранее спасибо за любую помощь или руководство!

3 ответа

Решение

Я на самом деле просто выяснил, что происходит не так, или, по крайней мере, я нашел решение, хотя и не знал точно, почему это влияет на правила цены корзины покупок. Вы правы, что я даже не смог заставить работать простое правило цены - оно просто не работало, как бы я ни изменил правило. В любом случае, работая над другой проблемой, я понял, что мне не хватает поля "Итого / общая сумма" на внешней стороне корзины покупок (я установил чистую копию версии 1.4.1.1 на свой локальный хост, когда я ее заметил отсутствовал на моем живом сайте). Когда я снова включил окно Итого / Итого, правила снова начали работать. (Полагаю, теперь, когда у Magento есть место на внешнем интерфейсе, чтобы показать скидку, он фактически применяет его, тогда как раньше он просто ничего не делал.)

Итак, чтобы снова включить окно промежуточного итога / общего итога, в серверной части я выбрал Система> Конфигурация> Дополнительно> Включить модуль Mage_Tax. Опять же, я не уверен, почему он был отключен в первую очередь, и я не уверен, влияет ли это на что-то еще на сайте, но это уже давно, и я ничего не заметил. Вот снимок экрана, на котором это работает:

Я думаю, что проблема заключается в использовании SKU с вашими пользовательскими опциями в сочетании с ограничением правила ценообразования для SKU продукта. Magento объединяет их, используя дефис - разместите тестовый заказ, чтобы увидеть, в этом ли проблема.

SKU в тестовом заказе, который я сделал, выходит примерно так; [ORIGINAL_PRODUCT_SKU]-[CUSTOM_OPTION_SKU]

По крайней мере, это результат, который я получаю от версии 1.5.0.1

Самым быстрым решением, которое я смог найти, было соответствие правилу для URL-адреса продукта, а не SKU. Это не самое интуитивно понятное решение, но, поскольку вы не измените URL-адрес продукта (надеюсь), оно будет работать там, где не работают SKU с пользовательскими параметрами.

В версии 1.4 ключ URL должен быть доступен для выбора вместо SKU уже. Таким образом, вы можете просто выбрать URL-ключ вместо sku и вставить правильный URL-адрес вашего продукта в правило цены корзины покупок. Просто замените "SKU is..." на "URL key is...", вставив правильный URL-ключ для вашего продукта.

В версии 1.5 мне нужно было включить "Использовать для условий правила промо" в атрибуте url_key следующим образом;

  1. Войдите в админку Magento
  2. Перейдите в Каталог> Атрибуты> Управление Атрибутами
  3. Найдите код Atrtibute "url_key" и нажмите, чтобы изменить его
  4. Измените "Использовать для условий правил промо" на Да
  5. Сохраните изменения
  6. Вам может понадобиться переиндексировать индекс Product Flat Data на этом этапе.

Тогда я мог бы использовать это в своем правиле цены.

Если бы точно такая же проблема была на CE 1.9 с PHP7, то решение "Совместимость с PHP 7 для Magento 1" Inchoo решило эту проблему!

https://github.com/Inchoo/Inchoo_PHP7

Другие вопросы по тегам