Câu trả lời:
Đôi khi chúng ta cần sửa đổi các mẫu hiện có. Thay vì thực hiện thay đổi trực tiếp cho các tệp mẫu hiện có, chúng ta nên ghi đè chúng trong chủ đề của riêng mình. Chúng ta hãy giả sử rằng chúng ta muốn cập nhật trang danh sách danh mục ( list.phtml
). Để làm như vậy, tạo cấu trúc thư mục sau:
app/design/frontend/Mycompany/Basic/Magento_Catalog/templates/product
Ở đây tôi giả định rằng chủ đề hiện tại của chúng tôi là Cơ bản. Bây giờ sao chép tệp list.phtml vào thư mục sản phẩm từ vị trí sau:
app/vendor/magento/module-catalog/view/frontend/templates/product/list.phtml
Bây giờ bạn có thể thực hiện bất kỳ sửa đổi nào bạn muốn cho tập tin bị ghi đè của bạn.
Để biết chi tiết xin vui lòng đọc hướng dẫn này, nó sẽ giúp bạn rất nhiều.
Tôi đang trả lời câu hỏi của riêng tôi,
Tôi đã tìm ra cách ghi đè các tệp .phtml vào các vị trí được đề cập trong câu hỏi của tôi,
Bạn phải đặt chúng ở các vị trí sau để ghi đè các tệp gốc
app\design\frontend\<VENDOR_NAME>\<THEME_NAME>\Magento_Catalog\templates\product\view
Và tôi tin rằng lý thuyết này giống nhau khi ghi đè bất kỳ tệp .phtml nào khác trong Magento 2
Để ghi đè phtml, bố cục và tệp web để sở hữu chủ đề tùy chỉnh
1) Để ghi đè tệp mẫu:
nhà cung cấp / magento / mô-đun-danh mục / xem / frontend / mẫu / sản phẩm / list.phtml
Theo con đường này
ứng dụng / thiết kế / frontend / Nhà cung cấp / chủ đề / Magento_Catalog / mẫu / sản phẩm / list.phtml
2) Để ghi đè tập tin bố cục:
nhà cung cấp / magento / mô-đun-danh mục / xem / frontend / layout / catalog_product_view.xml
Theo con đường này
ứng dụng / thiết kế / frontend / Nhà cung cấp / chủ đề / Magento_Catalog / layout / catalog_product_view.xml
Để ghi đè tệp pthml và bố cục từ
vendor/magento/module-catalog/view/frontend/templates/product/list.phtml
vào
app/Mycompany/OverideCatalog/view/frontend/templates/product/list.phtml
Bố trí:
vendor/magento/module-catalog/view/frontend/layout/catalog_category_view.xml
vào
app/Mycompany/OverideCatalog/view/frontend/layout/catalog_category_view.xml
<block class="Magento\Catalog\Block\Product\ListProduct" name="category.products.list" as="product_list" template="Mycompnay_OverideCatalog::product/list.phtml">
ghi đè mẫu (phtml) theo chủ đề tùy chỉnh
Nếu bạn muốn ghi đè vendor\magento\module-catalog\view\frontend\templates\product\some.phtml
trước tiên, bạn cần tạo chủ đề tùy chỉnh của mình, vui lòng tham khảo liên kết này để biết cách tạo chủ đề tùy chỉnh.
sau đó tạo tệp phtml trong chủ đề tùy chỉnh của bạn để ghi đè mặc định
app/design/frontend/vendor-name/theme-name/Magento_Catalog/templates/product/some.phtml
Cuối cùng nó cũng xóa bộ nhớ cache của magento cũng như trình duyệt, sau đó kiểm tra trang của bạn, tệp phtml mới chỉ được phản ánh.
cùng một cách bạn có thể làm cho tất cả các mẫu ghi đè.
chúc may mắn
Mở thư mục: /vendor/magento/theme-frontend-luma/
và sao chép các mẫu mô-đun và tệp bố cục từ thư mục xem.
Sau đó tạo thư mục: /app/design/frontend/spacename/Theme/
Sau đó tạo thư mục mô-đun và sau đó tạo mẫu và thư mục bố trí.
Chèn các mẫu và tập tin bố trí từ thư mục xem mô-đun.
Classy Llama đã làm rất tốt trên một bài viết cho thấy nhiều tình huống và cách ghi đè các tệp mẫu trong mỗi bài viết.
https://www.classyllama.com/blog/template-override-m2
Nó giúp tôi khi tôi đến chủ đề này để tìm câu trả lời.