【问题标题】:how to display a message on cart and checkout page for particular category product?如何在购物车和结帐页面上显示特定类别产品的消息?
【发布时间】:2011-12-22 19:03:21
【问题描述】:

假设我有一个类别“测试”及其产品“t1”。如果我将此产品添加到购物车,它必须显示一些消息“我的自定义消息”。同样在结帐页面上,我如何在付款步骤中做同样的事情。即检查它是否来自类别测试然后显示此消息?

到目前为止,我在购物车页面上尝试的是在 cart.phtml 上的表单之前:

$_catCollection = $this->getItem()->getProduct()->getCategoryCollection();

foreach ($_catCollection as $_category) {
  // do stuff with your Mage_Catalog_Model_Category
  print_r($_category);
}
?>

但是得到这个 致命错误:在非对象上调用成员函数 getProduct()

【问题讨论】:

  • 至于您的错误,这是因为 $this 是 Mage_Checkout_Block_Cart 对象。此类没有 getItem() 方法(尽管有 getItems(),但它有)。相反,您需要获取项目集合并循环访问它们,因为您的购物车可能有多个项目。作为参考,您可以访问课堂文档:docs.magentocommerce.com/Mage_Checkout/…

标签: customization magento-1.4 magento-1.5 magento


【解决方案1】:

为每个包含您的特殊信息的产品设置一个属性。

那么你也许可以按照以下方式做一些事情:

 <?php foreach ($this->getItems() as $item) : ?>
      <?php  if ($item->getSpecialMessage) : ?>
           <?php echo $item->getSpecialMessage ?>
      <?php endif ?>
 <?php endforeach; ?>

【讨论】:

    猜你喜欢
    • 2015-03-17
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    • 2020-12-13
    • 1970-01-01
    • 2020-11-03
    • 2017-01-07
    • 2021-08-04
    相关资源
    最近更新 更多