将Magento“添加到购物车”按钮移动到新文件不起作用

时间:2013-04-30 14:35:16

标签: magento e-commerce magento-1.7 php

我想将view.phtml文件中的添加到购物车按钮移动到2columns-right.phtml文件,我无法使其正常工作。我所做的是将<?php echo $this->getChildHtml('addtocart') ?>view.phtml文件复制到2columns-right.phtml,但它根本没有出现。我做了Flush Magento缓存,但没有再做任何事。

有关如何使这项工作的任何建议?

3 个答案:

答案 0 :(得分:1)

你应该熟悉magento布局系统。为了使<?php echo $this->getChildHtml('addtocart') ?>工作2columns-right.phtml,可以将此块声明为根块的子块(根是使用2columns-right.phtml呈现的块)。实际上,我认为将添加到购物车添加到其他模板时没有多大意义,因为addtocart.phtml本身只是一个提交位于catalog/product/view.phtml的整个表单的按钮。如果你把它拿出来就不会工作。

答案 1 :(得分:1)

首先,我同意永远不会在没有声明的情况下获得childhtml。但你可以使用

<?php echo $this->getLayout()->createBlock('catalog/product_view')->setTemplate('catalog/product/view/addtocart.phtml')->toHtml(); ?>

2columns-right.phtml中使用此功能,您肯定会得到addtocart.phtml

答案 2 :(得分:0)

使用

调用添加到购物车按钮
<?php echo $this->getChildHtml('addtocart') ?>
在layout / local.xml中你想要的页面上的

<yourModule_YourController_yourAction>
   <reference name="content">
      <block type="catalog/product_view" name="product.info.addtocart" as="addtocart" template="catalog/product/view/addtocart.phtml"/>
   </reference>
</yourModule_YourController_yourAction>