【发布时间】:2014-04-28 21:54:15
【问题描述】:
在magento开发中如何访问一个或多个“.phtml”文件中的一个“.phtml”文件?
例如:
在我的主题模板文件夹中有一个文件夹信息。它包含 info.phtml。这个 info.phtml 显示来自数据库的数据。我想通过使用 getChildHtml() 在我的其他 .phtml 文件中使用这个 info.phtml 怎么做?
【问题讨论】:
在magento开发中如何访问一个或多个“.phtml”文件中的一个“.phtml”文件?
例如:
在我的主题模板文件夹中有一个文件夹信息。它包含 info.phtml。这个 info.phtml 显示来自数据库的数据。我想通过使用 getChildHtml() 在我的其他 .phtml 文件中使用这个 info.phtml 怎么做?
【问题讨论】:
在您的 phtml 文件中尝试此代码以调用另一个 phtml 文件
<?php
echo $this->getLayout()->createBlock('core/template')->setTemplate('test/test.phtml')->toHtml();
?>
【讨论】:
要使用 getChildHtml() 来做到这一点,另一个 phtml 文件需要是您正在处理的块内的子块。 那段 xml 来自 app/design/frontend/yourtheme/layout/catalog.xml,在该块声明中,您会看到更多可以通过 getChildHtml() 调用的块。
<block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml">
<block type="catalog/product_list_related" name="product.related.products" as="related_products" template="catalog/product/view/related-products.phtml"/>
</block>
在这种情况下,您可以像 getChildHtml('related_products') 那样在父块 view.phtml 中调用related-products.phtml。
【讨论】: