是否可以覆盖由magento生成的错误或成功消息?

时间:2011-04-13 10:38:09

标签: magento

是否可以覆盖由magento系统生成的错误/成功消息?

例如,如果我们添加成功消息的产品 “笔记本电脑已添加到您的购物车..!”,如果我想添加我的客户名称,例如“Josh,您已将笔记本电脑添加到购物车中”,该怎么办?

谢谢, 巴兰

1 个答案:

答案 0 :(得分:4)

添加项目时,将自定义消息添加到堆栈很容易。为checkout_cart_add_product_complete添加一个事件监听器来执行此操作:

public function observeAddToCart($observer) { 
    $product = $observer->getEvent()->getProduct(); // you may need to play with this
    $session = Mage::getSingleton("checkout/session")->addSuccess($message); 
    $message = Mage::helper("yourmodule")->__('%s, you added %s to your shopping cart.', Mage::helper('core')->htmlEscape($product->getName()));
    $session->addSuccess($message); 
}

这留下了删除旧邮件的问题。我现在看到的最接近的是你可以通过检索它来清除命令中的所有其他消息。所以你可以之后清除Magento设置的消息:

Mage::getSingleton("checkout/session")->getMessages(true);

然而,在添加Magento消息之后,您需要执行此操作。希望能给你一个开始!

谢谢, 乔