Мы расширили слайдер главной страницы для клиента, чтобы они могли размещать продукты в этом пространстве.getGalleryImages, возвращающий NULL на домашней странице Magento
Как часть этого, есть три слота изображения, где мы хотим получить основное изображение продукта, а затем два изображения из медиа-галереи (идеально случайным образом, но не конец света, если по 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) ?>" />
И это достаточно просто, чтобы все три слота изображения использовали это основное изображение, как показано на изображении выше.
Когда мы пытаемся вызвать 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; ?>
Пожалуйста, может кто-нибудь посоветовать лучший подход, чтобы позвонить в галерее изображения на главной странице. Есть ли что-то, что мы можем включить в сборку, или нам нужно добавить наблюдателя.
Заранее спасибо.
Это все еще казалось, вернуть 'NULL'. При необходимости я могу предоставить больше кода. Благодарю. – zigojacko