我使用bitnami docker容器运行magento2,并安装了claue主题。安装了claue主题后,我得到了错误,同时加载登录页(主页)。
错误:
[php7:error] [pid 524] [client 172.18.0.1:36096] PHP Fatal error: Declaration of MGS\\Mpanel\\Helper\\Swatches\\Data::getProductMediaGallery(Magento\\Catalog\\Model\\Product $product) must be compatible with Magento\\Swatches\\Helper\\Data::getProductMediaGallery(Magento\\Catalog\\Model\\Product $product): array in /bitnami/magento/htdocs/app/code/MGS/Mpanel/Helper/Swatches/Data.php on line 0样例/Data.php
use Magento\Catalog\Model\Product as ModelProduct;
public function getProductMediaGallery(ModelProduct $product){
if(!in_array($product->getData('image'), [null, self::EMPTY_IMAGE_VALUE], true)){
$baseImage = $prodcut->getData('image');
}else{
$productMedaiAttributes = array_filter($product->getMediaAttributeValues(), function($value){
return $value !== self::EMPTY_IMAGE_VALUE && $values !== 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;
}我是php和magento的新手。我找不到解决这个问题的办法。请帮助解决这个问题。如果需要任何细节,请让我知道。
提前谢谢。
发布于 2020-08-26 14:11:08
正如错误消息所说,您必须通过在方法声明的末尾添加返回类型(在本例中为: array),使您的方法与您覆盖的方法兼容。您的代码行:public function getProductMediaGallery(ModelProduct $product){将变为:public function getProductMediaGallery(ModelProduct $product): array {
https://stackoverflow.com/questions/63591088
复制相似问题