0

私はmagentoでウェブサイトを作成しています。

そのため、新しいメディア イメージ属性を製品に追加しました。ホームページに特定の画像を使用したいのですが、一部の製品にはこの画像がありません。

そこで、list-homepage.phtml という新しい list.phtml ファイルを作成しました。

だから私はlist.phtmlのループのための製品コレクション内で現時点でこれをやっています。

$product=Mage::getModel('catalog/product')->load($_product->getId());

商品を上から再度ロードし、この商品に新しい画像属性があるかどうかをテストします

<?php if ($product->getMaleFemaleImage()){  ?>
      <img src="<?php echo $this->helper('catalog/image')->init($product, 'male_female_image')->setQuality(100)->resize($imgSize); ?>" width="<?php echo $imgSize ?>" height="<?php echo $imgSize ?>" alt="<?php echo $this->stripTags($this->getImageLabel($product, 'male_female_image'), null, true) ?> " />
<?php }else{ ?>
     <img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->setQuality(100)->resize($imgSize); ?>" width="<?php echo $imgSize ?>" height="<?php echo $imgSize ?>" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" />
<?php }?>

これは機能しますが、上からわかるように、製品を再度ロードする必要があり、これを実行したくありません。私が作成した male_female_image 属性にアクセスする方法はありますか?

4

1 に答える 1

4

@ Magento を見てみましょう - 製品フラット テーブルにメディア ギャラリー属性を追加します

app/design/frontend/default/yourtheme/layout/catalog.xml を開きます

で、以下の行<catalog_category_layered translate="label"><catalog_category_default translate="label">見つけます

 <block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
 <block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
 <block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">

と (追加<action method="addAttribute">....)

<block type="catalog/category_view" name="category.products" template="catalog/category/view.phtml">
<block type="catalog/product_list" name="product_list" template="catalog/product/list.phtml">
add -->   <action method="addAttribute"><name>MaleFemaleImage</name></action>
<block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">

続きを読む @

于 2012-11-15T12:48:02.223 に答える