閱讀892 返回首頁    go 阿裏雲 go 技術社區[雲棲]


magento -- 怎麼把評論顯示到產品頁麵

Magento默認的評論填寫和顯示都是需要從產品頁點擊到另一個頁麵,怎麼把提交評論的表單和評論的顯示都拿到產品頁來也算是一個古老的問題了,相信很多人都知道怎麼操作了,不過也還是經常有剛接觸Magento的人提到這個問題,今天就描述下流程(以1.4.1.1為例)。

打開/app/design/frontend/default/your_theme/layout/review.xml,複製如下代碼

<block type="page/html_pager" name="product_review_list.toolbar" /> <block type="core/template" name="product_review_list.count" template="review/product/view/count.phtml" /> <block type="review/product_view_list" name="product.info.product_additional_data" as="product_additional_data" template="review/product/view/list.phtml"> <block type="review/form" name="product.review.form" as="review_form"> <block type="page/html_wrapper" name="product.review.form.fields.before" as="form_fields_before"> <action method="setMayBeInvisible"><value>1</value></action> </block> </block> </block> 

 

打開/app/design/frontend/default/your_theme/layout/catalog.xml,找到

 

<!--

Product view

-->

 

 

粘貼剛才複製的代碼到

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

這個Block內部,因為product_additional_data這個Block名在產品頁已經被使用,所以為了避免衝突我把評論這個Block的as改為product_review

<block type="catalog/product_view" name="product.info.options.wrapper.bottom" as="product_options_wrapper_bottom" template="catalog/product/view/options/wrapper/bottom.phtml" translate="label"> <label>Bottom Block Options Wrapper</label> <action method="insert"><block>product.tierprices</block></action> <block type="catalog/product_view" name="product.clone_prices" as="prices" template="catalog/product/view/price_clone.phtml"/> <action method="append"><block>product.info.addtocart</block></action> </block> <!--Alex --> <block type="page/html_pager" name="product_review_list.toolbar" /> <block type="core/template" name="product_review_list.count" template="review/product/view/count.phtml" /> <block type="review/product_view_list" name="product.info.product_additional_data" as="product_review" template="review/product/view/list.phtml"> <block type="review/form" name="product.review.form" as="review_form"> <block type="page/html_wrapper" name="product.review.form.fields.before" as="form_fields_before"> <action method="setMayBeInvisible"><value>1</value></action> </block> </block> </block> <!--Alex --> <block type="core/template_facade" name="product.info.container1" as="container1"> <action method="setDataByKey"><key>alias_in_layout</key><value>container1</value></action> <action method="setDataByKeyFromRegistry"><key>options_container</key><key_in_registry>product</key_in_registry></action> <action method="append"><block>product.info.options.wrapper</block></action> <action method="append"><block>product.info.options.wrapper.bottom</block></action> </block> 

 

最後一步,打開/app/design/frontend/default/your_theme/template/catalog/product/view.phtml,在適當的位置調用剛才的Block,我現在把它加到最後麵

<?php echo $this->getChildHtml('upsell_products') ?> <?php echo $this->getChildHtml('product_additional_data') ?> <!--Alex --> <?php echo $this->getChildHtml('product_review') ?> <!--Alex --> 

完成,緩存開著的話記得要刷新下緩存。效果如下

 

最後更新:2017-04-02 06:51:29

  上一篇:go 阻止Application_End事件的解決方案
  下一篇:go UDP&quot;打洞&quot;原理