本文整理汇总了PHP中Magento\Catalog\Api\Data\ProductInterface::getMediaAttributeValues方法的典型用法代码示例。如果您正苦于以下问题:PHP ProductInterface::getMediaAttributeValues方法的具体用法?PHP ProductInterface::getMediaAttributeValues怎么用?PHP ProductInterface::getMediaAttributeValues使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Magento\Catalog\Api\Data\ProductInterface
的用法示例。
在下文中一共展示了ProductInterface::getMediaAttributeValues方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getProductMediaGallery
/**
* Method getting full media gallery for current Product
* Array structure: [
* ['image'] => 'http://url/pub/media/catalog/product/2/0/blabla.jpg',
* ['mediaGallery'] => [
* galleryImageId1 => simpleProductImage1.jpg,
* galleryImageId2 => simpleProductImage2.jpg,
* ...,
* ]
* ]
* @param Product $product
* @return array
*/
public function getProductMediaGallery(Product $product)
{
if (!in_array($product->getData('image'), [null, 'no_selection'], true)) {
$baseImage = $product->getData('image');
} else {
$productMediaAttributes = array_filter($product->getMediaAttributeValues(), function ($value) {
return $value !== 'no_selection' && $value !== null;
});
foreach ($productMediaAttributes as $attributeCode => $value) {
if ($attributeCode !== 'swatch_image') {
$baseImage = (string) $value;
break;
}
}
}
if (empty($baseImage)) {
return [];
}
$resultGallery = $this->getAllSizeImages($product, $baseImage);
$resultGallery['gallery'] = $this->getGalleryImages($product);
return $resultGallery;
}
示例2: getProductMedia
/**
* Get all media for product
*
* @param Product $product
* @return array|bool
*/
protected function getProductMedia(Product $product)
{
return array_filter($product->getMediaAttributeValues(), function ($value) {
return $value != 'no_selection' && $value !== null;
});
}