Magento увеличивает до проверки - PullRequest
2 голосов
/ 26 января 2012

В magento есть ли способ заставить пользователя получать продукты с шагом 50, прежде чем они оформят заказ?Я смог выяснить, что им нужно 50, прежде чем оформить заказ, но это не мешает кому-то заказать 51. Я продаю спички, и я настроил каждый продукт как свой собственный аромат, чтобы вы могли заказать 4 из одного продукта и 57 издругой, но я хочу заставить человека оформить заказ с общим приращением 50. Таким образом, технически у него может быть 20 красных спичек, 30 зеленых, 25 белых и 25 черных.Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

0 голосов
/ 27 января 2012

В дополнение к этому, в книге php Architect для Magento "Руководство по программированию в электронной коммерции с Magento" рассматривается специальный модуль, который выполняет подобные действия. Может стоит проверить.

0 голосов
/ 26 января 2012

Итак, вам нужно проверить, делится ли общее количество элементов корзины на 50. Решение будет отличаться в зависимости от того, есть ли у вас корзина AJAX или традиционная корзина POST. Я предполагаю, что у вас есть последнее.

На странице проверки оформления заказа вы захотите добавить чек следующим образом:

<?php
    // /app/code/core/Mage/Checkout/controllers/CartController.php
    $cart           = Mage::helper('checkout/cart')->getCart();
    $cartItemsCount = $cart->getQuote()->getItemsSummaryQty();

    if( $cartItemsCount % 50 !== 0 ) {
        // Redirect and show error message
        $this->_getSession()->addError('Custom cart rule does not allow this');
        $this->_goBack();
    }
?>

Примечание. Лучший способ редактирования ядра - это расширение файла в свой собственный модуль.

Проверка внешнего интерфейса также возможна, но она не защищена от ошибок. Хитрые пользователи могут обойти эту проверку.

Чтобы упростить работу для пользователя, вы могли бы ввести числовое значение HTML5 для числового ввода , а затем увеличить атрибут шага в блоках по 50.

Очевидно, вам нужно будет соединить точки здесь и проделать небольшую работу, но это поможет вам начать работу над этим. Приветствия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...