クライアントのホームページ スライダーを拡張して、このスペースで製品を紹介できるようにしました。
その一環として、製品のメイン画像を取得する 3 つの画像スロットがあり、次にメディア ギャラリーから 2 つの画像を取得します (理想的にはランダムですが、ID による世界の終わりではありません)。
理解を深めるために、これまでのスクリーンショットをご覧ください:-
以下を使用して、このモジュールのコレクションを構築しています。
$featured_products = Mage::getModel('catalog/product')
->getCollection()
->addAttributeToSelect('*')
->AddAttributeToFilter('featured', array('eq' => 1));
製品のメイン画像を取得することは問題ありません。これは次のもので完全に機能しています:-
<img class="gallery" src="<?php echo $this->helper('catalog/image')->init($product, 'small_image')->resize(225); ?>" alt="<?php echo $this->stripTags($this->getImageLabel($product, 'small_image'), null, true) ?>" />
上の画像に示すように、3 つの画像スロットすべてでこのメイン画像を使用するのは簡単です。
ただし、getGalleryImages を呼び出そうとすると、常に次のように返されますNULL
(例):-
<?php if (count($this->getGalleryImages()) > 0): ?>
<?php foreach ($this->getGalleryImages() as $_image): ?>
<img class="gallery" src="<?php echo $this->helper('catalog/image')->init($this->getProduct(), 'thumbnail', $_image->getFile())->resize(100); ?>" width="100" height="100" alt="<?php echo $this->htmlEscape($_image->getLabel()) ?>" />
<?php endforeach; ?>
<?php endif; ?>
誰かがホームページのギャラリー画像を呼び出すための最良の方法をアドバイスしてください. コレクションのビルドに含めることができるものはありますか、それともオブザーバーを追加する必要がありますか?
前もって感謝します。