Chcę dodać własny blok na stronie z listą [Magento-2], ale bez żadnych modyfikacji list.phtml
ani żadnego.phtml
pliku. Czy jest jakaś możliwość za pomocą xml
pliku?
Każda pomoc będzie mile widziana.
magento2
product-list
Keyur Shah
źródło
źródło
Odpowiedzi:
Możesz to zrobić, jeśli utworzysz nowy moduł, aby zastąpić ten blok:
vendor\magento\module-catalog\Block\Product\ListProduct.php
aby zastąpić ten blok, musisz utworzyć
di.xml
wapp\code\Vendor\Module_Name\etc
di.xml
zadowolony:Utwórz nową nazwę pliku
ListProduct.php
naapp\code\Vendor\Module_Name\Block\Product
ListProduct.php
zadowolony:Możesz zmienić blok
Magento\Framework\View\Element\Template
na swój blokutwórz
test.phtml
plik oapp\code\Vendor\Module_Name\view\frontend\templates
źródło
di.xml
użyciu powyższej metody. Jak wyświetlić moją niestandardową wartość atrybutu na stronie z listą?Obecnie nie można tego zrobić, ponieważ cała logika produktu wyjściowego jest zapisana w
list.phtml
szablonie.źródło
Oto moje zdanie na temat rozwiązania - ale musisz zmodyfikować
list.phtml
szablon:catalog_category_view.xml
W
custom-block.phtml
można uzyskać produkt jak ten:Musisz jednak zastąpić
list.phtml
szablon ... Po prostu dodaj to w miejscu, w którym chcesz, aby niestandardowy blok wyświetlał:Jeśli naprawdę chcesz uniknąć modyfikacji
list.phtml
szablonu, możesz być w stanie zrobić coś podobnego, ale używając innego szablonu.źródło