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'); ?>

ただし、何も表示されず、デバッグ テンプレート ヒントがオンになっていると、新しく追加されたブロック テンプレートへの参照がありません。

誰が私が間違っているかを見ることができますか? どうもありがとうリッチ

4

1 に答える 1

1

わかりませんが、スニペットが local.xml に正確に配置されている場合は、構文が間違っています。参照名の内容が 2 回あります。配置してみてください

<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 ファイルでレイアウトを変更することをお勧めします。theme/layout フォルダーに新しいファイルを作成し、そこで変更を加えます。それはよりマジェントのように動作し、local.xml の変更は常に通常の xml 構造をオーバーライドします。

それが役立つことを願っています!

于 2013-08-15T10:49:32.243 に答える