我正在使用此处描述的方法在cms页面上显示单个产品:
问题在于,如果我尝试使用此方法显示2个产品,即使我在每个块中指定了不同的ID,两个块都显示相同的产品,即:
{{block type="catalog/product_new" product_id="1" template="catalog/product/view/your_new_page.phtml"}}
{{block type="catalog/product_new" product_id="2" template="catalog/product/view/your_new_page.phtml"}}
将上述代码添加到我的cms页面会导致产品1显示两次。
答案 0 :(得分:3)
以下是解决方案更改product_new到product_view 像这样: 类型= “目录/ product_view” 玩得开心:)
答案 1 :(得分:2)
如果不确切知道您正在运行的Magento版本,我选择为您查看1.3.2.4。
奇怪的是,我很惊讶你使用'catalog / product_new'获得了任何好结果。它没有规定将产品ID作为块arg传递。 'catalog / product_view'允许您将产品ID作为arg传递,但只能传递一次。如果您在下面注意到,它会在第一次将产品设置为注册表对象,之后不会使用传入的产品ID。
public function getProduct()
{
if (!Mage::registry('product') && $this->getProductId()) {
$product = Mage::getModel('catalog/product')->load($this->getProductId());
Mage::register('product', $product);
}
return Mage::registry('product');
}
答案 2 :(得分:0)
我的2美分(虽然不确定......):您是否尝试为每个街区设置名称? 喜欢:
{{block type="catalog/product_new" product_id="1" name="first.product" template="catalog/product/view/your_new_page.phtml"}}
{{block type="catalog/product_new" product_id="2" name="second.product" template="catalog/product/view/your_new_page.phtml"}}