Magento usa o arquivo chamado view.xml
que é mantido no nível do tema do aplicativo.
Por exemplo, se você estiver usando o tema padrão, luma
deverá encontrar o view.xml
itemvendor/magento/theme-frontend-luma/etc/view.xml
Nesse arquivo, você veria o <images/>
nó dentro do <media>
nó.
<view xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/view.xsd">
<media>
<images module="Magento_Catalog">
<image id="bundled_product_customization_page" type="thumbnail">
<width>140</width>
<height>140</height>
</image>
<image id="cart_cross_sell_products" type="thumbnail">
<width>200</width>
<height>248</height>
</image>
<image id="cart_page_product_thumbnail" type="small_image">
<width>165</width>
<height>165</height>
</image>
........
</images>
</media>
......
</view>
A dimensão das imagens é mantida aqui sob o <image/>
nó.
O id
valor do atributo do <image/>
nó é referenciado na base de código.
Por exemplo:
<image id="related_products_list" type="small_image">
<width>152</width>
<height>190</height>
</image>
O valor do ID é usado no arquivo de visualização vendor/magento/module-catalog/view/frontend/templates/product/list/items.phtml
case 'related':
/** @var \Magento\Catalog\Block\Product\ProductList\Related $block */
if ($exist = $block->getItems()->getSize()) {
$type = 'related';
$class = $type;
$image = 'related_products_list';
$title = __('Related Products');
$items = $block->getItems();
$limit = 0;
$shuffle = 0;
$canItemsAddToCart = $block->canItemsAddToCart();
$showWishlist = true;
$showCompare = true;
$showCart = false;
$templateType = null;
$description = false;
}
break;
Aqui o $image
refere-se ao valor do tamanho da imagem aqui:
<?php echo $block->getImage($_item, $image)->toHtml(); ?>
Caso o tema não possua um view.xml
, pode estar usando um tema de fallback (tema pai) que possui o view.xml
arquivo.
<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
<title>Magento Luma</title>
<parent>Magento/blank</parent>
.....
</theme>
Aqui Magento/blank
está o tema principal.
No caso de alterar / substituir os valores do view.xml
arquivo, você precisa copiar completamente o view.xml
arquivo inteiro para o seu tema personalizado e alterar os valores.
view.xml
não possui um sistema de fallback de valor de nó, significa que, se um valor de um nó não estiver presente nos seus temas personalizados, view.xml
ele não retornará ao valor view.xml do tema pai, é por isso que o arquivo inteiro precisa ser copiado.
Depois que as alterações nos valores forem feitas, você terá que executar
php bin/magento catalog:images:resize
Isso regenerará os novos tamanhos de imagem.