Magento verwendet die aufgerufene Datei, view.xml
die auf der Themenebene der Anwendung verwaltet wird.
Wenn Sie beispielsweise das Standarddesign verwenden luma
, sollten Sie das view.xml
unter findenvendor/magento/theme-frontend-luma/etc/view.xml
In dieser Datei würden Sie <images/>
Knoten innerhalb des <media>
Knotens sehen.
<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>
Die Dimension der Bilder wird hier unter dem <image/>
Knoten beibehalten .
Der id
Attributwert des <image/>
Knotens wird in der Codebasis referenziert.
Beispielsweise:
<image id="related_products_list" type="small_image">
<width>152</width>
<height>190</height>
</image>
Der ID-Wert wird in der Ansichtsdatei verwendet 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;
Hier $image
bezieht sich das auf den Wert der Bildgröße hier:
<?php echo $block->getImage($_item, $image)->toHtml(); ?>
Falls das Design kein hat view.xml
, könnte es ein Fallback-Design (übergeordnetes Design) verwenden, das die view.xml
Datei enthält.
<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>
Hier Magento/blank
ist das übergeordnete Thema.
Wenn Sie die Werte der view.xml
Datei ändern oder überschreiben möchten, müssen Sie die gesamte view.xml
Datei vollständig in Ihr benutzerdefiniertes Design kopieren und die Werte ändern.
view.xml
Es gibt kein Fallback-System für Knotenwerte. Wenn ein Wert eines Knotens in Ihrem benutzerdefinierten Design nicht vorhanden ist view.xml
, wird er nicht auf den view.xml-Wert des übergeordneten Designs zurückgesetzt. Aus diesem Grund muss die gesamte Datei kopiert werden.
Sobald die Wertänderungen vorgenommen wurden, müssen Sie ausführen
php bin/magento catalog:images:resize
Dadurch werden die neuen Bildgrößen neu generiert.