Saya membuat modul dan ingin menimpa template app/code/Magento/Catalog/view/adminhtml/templates/catalog/product/edit/options.phtml
.
Apakah ini mungkin dalam modul (bukan tema)
Sayangnya sepertinya tidak super-mudah untuk mengubah nama modul melalui tata letak XML, karena ini diatur dalam kode-keras di https://github.com/magento/magento2/blob/develop/app/code/Magento/Catalog/Block /Adminhtml/Product/Edit/Tab/Options.php#L21
Jawaban:
Tambahkan folder tata letak file modul Anda [Vendor] / [ModuleName] /view/adminhtml/layout/catalog_product_options.xml
Juga perlu menambahkan ke modul xml baris ini, untuk memuat tata letak Anda setelah katalog
sumber
admin.product.options
?Vendor_ModuleName::product_options.phtml
?<action method="setTemplate">
bukan<arguments>
. Solusi ini berfungsi dalam semua kasus.CATATAN: sangat penting untuk menggunakan
<action method="setTemplate">
bukan<arguments>
.<arguments>
hanya akan berfungsi jika blok tidak memiliki templat lain yang ditentukan pada deklarasi xml. Dalam kasus lain, Anda perlu<action method="setTemplate">
mengganti template yang ada. Lebih baik digunakan<action method="setTemplate">
karena selalu berfungsi.sumber
Ya, Anda dapat menimpa file template dari aplikasi / kode modul khusus Anda. Namun, perlu diingat bahwa dalam konsep pewarisan Magento, file (templat, layout, file statis) dari aplikasi / desain menimpa yang sama di app / kode. Sama seperti tema anak menimpa tema orang tua.
Jadi, saya menganggap yang terbaik untuk membuat tema khusus untuk modul khusus Anda dan menambahkan semua file phtml, xml, css, js, font dan gambar Anda di aplikasi / desain.
sumber