2

我创建了两个新块,应该在这个块之前和之后输出:

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

为此,我创建了一个新模块,用于更新布局。在引用的 XML 文件中表示:

<catalog_product_view>
  <reference name="product.info">
    <block type="disablecartonlogout/output" name="disablecartonlogout.outputbefore" as="whatever" before="product.info.addtocart" template="disablecartonlogout/product-options-bottom-before.phtml" />
    <block type="disablecartonlogout/output" name="disablecartonlogout.outputafter" as="whatever" after="product.info.addtocart" template="disablecartonlogout/product-options-bottom-after.phtml" />
  </reference>
</catalog_product_view>

我没有输出。如果我更改对“内容”的引用,块将被输出,但位置错误。

你能告诉我,我做错了什么吗?

4

2 回答 2

4

您需要在您想要的位置显式调用product.info块模板(应该是catalog/product/view.phtml)中的块。

您要使用的方法仅适用于某些特定块(通常,core/text_listcore/template进行空调getChildHtml()用,情况并非如此product.info

于 2012-07-17T14:21:31.240 回答
0
<catalog_product_view>
    <reference name="product.info.addtocart">
        <block type="disablecartonlogout/output" name="disablecartonlogout.outputbefore" as="whatever1" before="-" template="disablecartonlogout/product-options-bottom-before.phtml" />
        <block type="disablecartonlogout/output" name="disablecartonlogout.outputafter" as="whatever2" after="-" template="disablecartonlogout/product-options-bottom-after.phtml" />
    </reference>
</catalog_product_view>

然后转到:

app\design\frontend\default\themeName\template\catalog\product\view\addtocart.phtml

并添加

$this->getChildHtml('whatever1', true, true);
$this->getChildHtml('whatever2', true, true);

试试这个,因为它可以帮助你。我尝试过这样的事情

于 2013-08-22T15:04:32.927 回答