2016-05-16 3 views
1

Im пытается получить поле представления отзывов, чтобы отобразить на странице продукта, показывая последние обзоры по этому вопросу.Отзыв на странице продукта Magento

Все учебники говорят им то же самое, но это не сработает. Есть идеи?

catalog.xml - в этом фрагменте кода вы можете увидеть, я включил ссылку на отзывы

<catalog_product_view translate="label"> 



     <label>Catalog Product View (Any)</label> 
     <!-- Mage_Catalog --> 




     <reference name="root"> 


      <action method="setTemplate"><template>page/2columns-right.phtml</template></action> 
     </reference> 
     <reference name="head"> 
      <action method="addJs"><script>varien/product.js</script></action> 
      <action method="addJs"><script>varien/configurable.js</script></action> 

      <action method="addItem"><type>js_css</type><name>calendar/calendar-win2k-1.css</name><params/><!--<if/><condition>can_load_calendar_js</condition>--></action> 
      <action method="addItem"><type>js</type><name>calendar/calendar.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action> 
      <action method="addItem"><type>js</type><name>calendar/calendar-setup.js</name><!--<params/><if/><condition>can_load_calendar_js</condition>--></action> 
     </reference> 
     <reference name="content"> 

      <block type="review/product_view_list" name="product.info.product_additional_data" as="reviews" template="review/product/view/list.phtml"/> 

      <block type="catalog/product_view" name="product.info" template="catalog/product/view.phtml"> 
       <!-- 
       <action method="addReviewSummaryTemplate"><type>default</type><template>review/helper/summary.phtml</template></action> 
       <action method="addReviewSummaryTemplate"><type>short</type><template>review/helper/summary_short.phtml</template></action> 
       <action method="addReviewSummaryTemplate"><type>...</type><template>...</template></action> 
       --> 
       <block type="catalog/product_view_media" name="product.info.media" as="media" template="catalog/product/view/media.phtml"/> 
       <block type="core/text_list" name="alert.urls" as="alert_urls" translate="label"> 
        <label>Alert Urls</label> 
       </block> 

затем назвали его в каталоге/продукта/view.phtml, где я хочу, чтобы она появилась:

<?php echo $this->getChildHtml('reviews') ?> 

ответ

0

Попробуйте это в каталоге/продукта/view.phtml:

<div> 
    <?php echo $this->getLayout()->createBlock('review/product_view_list')->setTemplate('review/product/view/list.phtml')->toHtml() ?> 
</div>   
<div> 
    <?php echo $this->getLayout()->createBlock('review/form')->setBlockId('product.review.form')->toHtml() ?> 
</div> 
+0

работал отлично спасибо. – jord49

0

Если вы хотите, чтобы показать отзывы в продуктах view.phtml шаблон, вам нужно добавить список отзывов в качестве дочернего элемента соответствующего блока. Каким должен быть каталог/product_view ... (а не контент). Итак, в вашем примере:

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

Тогда <?php echo $this->getChildHtml('reviews') ?> будет работать.

Смежные вопросы