Как создать пользовательские сообщения в magento, когда пользователь добавляет товар в корзину? - PullRequest
7 голосов
/ 12 августа 2011

Сначала я хотел создать новый атрибут.Давайте назовем это «Ценовой фактор».Целочисленные значения можно установить на странице продукта на панели управления администратора.

В интерфейсе пользователя всякий раз, когда пользователь добавляет товар в корзину, в корзине появляется сообщение с сообщением «Ваш старыйцена была X, а ваша новая цена - Y "(где X - исходная цена, а Y - скорректированная цена.)

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

1 Ответ

12 голосов
/ 13 августа 2011

Первое, что вам нужно сделать, это прослушать событие, которое срабатывает, когда товар добавляется в корзину.Это называется checkout_cart_add_product_complete и происходит от Mage/Checkout/controllers/CartController.php.

Подпись отправляемого события:

Mage::dispatchEvent('checkout_cart_add_product_complete',
    array(
        'product'  => $product,
        'request'  => $this->getRequest(),
        'response' => $this->getResponse()
    )
);

Мы можем получить доступ к продукту, которыйбыл добавлен в корзину через переменную продукта.Это означает, что мы можем оценить, нужно ли нам показывать наше новое сообщение или нет, на основе вашего атрибута.


Следующим шагом является добавление на страницу флеш-сообщения.Это контролируется с помощью сессий.Существует три типа сообщений, которые можно использовать: успех, ошибка и уведомление.Добавить сообщение просто:

Mage::getSingleton('core/session')->addSuccess($message);
Mage::getSingleton('core/session')->addError($message);
Mage::getSingleton('core/session')->addNotice($message);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...