0

我是使用 Magento 的新手,我正在尝试将“最近查看”块添加到产品视图页面的底部。我在这里创建了一个 catalog.xml 布局文件->

/app/design/frontend/default/<theme_name>/layout/catalog.xml

然后我编辑此文件以添加“最近查看的产品”块,如下所示 ->

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

     <reference name="content">
         <block type="reports/product_viewed" name="reports.product_viewed" as="product_viewed" template="reports/product_viewed.phtml"/>
     </reference>
 ...

注意 - 我也尝试过没有<reference name="content"></reference>包装器,结果相同。

在 view.phtml 模板中,我添加了以下内容:-

<?php echo $this->getChildHTML('product_viewed'); ?>

但是没有显示任何内容,并且在打开调试模板提示的情况下,没有对新添加的块模板的引用。

谁能看到我哪里出错了?非常感谢 Rich

4

1 回答 1

1

我不确定,但如果该片段正是您将其放入 local.xml 中的方式,那么您的语法错误。您有两次参考名称内容。尝试放置

<reference name="content">
     <block type="reports/product_viewed" name="reports.product_viewed" as="product_viewed" template="reports/product_viewed.phtml"/>
 </reference>

在外面:

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

或从产品视图块中删除参考标签。除此之外,我建议您在 local.xml 文件中更改布局。在您的主题/布局文件夹中创建一个新文件并在那里进行更改。它更像是 magento,并且 local.xml 更改将始终覆盖正常的 xml 结构。

希望有帮助!

于 2013-08-15T10:49:32.243 回答