软件自带的模版和一般的商业模版productlist里图片getimage()只显示产品的主图,不能显示其他图片。
想实现的功能是做一个商品浏览的carousel(这里直接用的bootstrap),需要调取产品的全部图片。
在stackoverflow上搜索了一下方法,很多回答是直接用$product->getMediaGalleryImages();
测试了一下不行,然后进一步搜寻了一下发现是缺少了$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $product = $objectManager->create('Magento\Catalog\Model\Product')->load($_product->getId());
完整代码为:
$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $product = $objectManager->create('Magento\Catalog\Model\Product')->load($_product->getId());
$images = $product->getMediaGalleryImages(); foreach($images as $child){ ?>
这个方法也有缺陷,消耗有点儿大,替代的方案是写一helper,来完成,stockoverflow上有很多例子。