如何在产品视图页面上添加审阅选项卡

时间:2012-08-30 09:18:47

标签: magento

我是Magento的初学者。我想在产品视图页面中添加Review选项卡。 任何人都可以帮我解决这个问题吗?

我尝试了以下方法:

<block type="catalog/product_view_tabs" name="product.info.tabs" as="info_tabs" template="catalog/product/view/tabs.phtml">
                    <!--action method="addTab" translate="title" module="catalog"><alias>additional</alias><title>General Info</title><block>catalog/product_view_attributes</block><template>catalog/product/view/attributes.phtml</template></action-->
                    <action method="addTab" translate="title" module="catalog"><alias>description</alias><title>Description</title><block>catalog/product_view_description</block><template>catalog/product/view/description.phtml</template></action>
                    <action method="addTab" translate="title" module="catalog"><alias>upsell</alias><title>Upsell</title><block>catalog/product_list_upsell</block><template>catalog/product/list/upsell.phtml</template></action>
                    <action method="addTab" translate="title" module="catalog"><alias>review</alias><title>Review</title><block>review/product_view_list</block><template>review/product/view/list.phtml</template></action>
                    <action method="addTab" translate="title" module="catalog"><alias>additional</alias><title>Additional Information</title><block>catalog/product_view_attributes</block><template>catalog/product/view/attributes.phtml</template></action>

    </block>

然后在view.phtml中使用echo $this->getChildHtml('info_tabs');

仅显示说明,评论和其他信息。 可能是什么问题? 感谢

1 个答案:

答案 0 :(得分:4)

以下是this duplicate question

的答案

这是我在我的一个项目中处理这种情况的方式:

添加带评论的标签

<block type="catalog/product_view_tabs" name="product.info.tabs" as="info_tabs" template="catalog/product/view/tabs.phtml" >
    <action method="addTab" translate="title" module="catalog"><alias>tab_review_list</alias><title>Product Reviews</title><block>review/product_view_list</block><template>catalog/product/view/tabs/reviews.phtml</template></action>
</block>

现在,审核表单由不同类型的块处理,该块通常是评论页面的子块。无法使用addTab操作创建嵌套块,但您可以在以下标签中创建审核块后使用<reference>处理程序:

<reference name="tab_review_list">
  <block type="review/form" name="tab_review_form" as="review_form" template="catalog/product/view/tabs/review_form.phtml" />
</reference>
name处理程序中的

<reference>必须等于<alias>操作中addTab中的内容。

你只需使用catalog/product/view/tabs/reviews.phtml

echo $this->getChildHtml('review_form');

您可以使用<reference>处理程序向审核列表和审核表单添加更多块。

当然,您必须在template参数中输入的路径中为审核列表和审核表单创建文件,因此在这种情况下,您需要创建catalog/product/view/tabs/reviews.phtmlcatalog/product/view/tabs/review_form.phtml。您可以将审阅表单模板更改为默认表单review/form.phtml如果您不需要更改其中的代码,或者您将仅在该选项卡中使用它,但审阅列表可能需要在html结构中进行更多更改,因此最好将为它创建单独的文件,并根据需要使用部分默认代码。