Làm thế nào để ghi đè
/var/www/html/magento2/vendor/magento/module-checkout/view/frontend/web/template/minicart/content.html
tập tin trong chủ đề tùy chỉnh của chúng tôi?
Làm thế nào để ghi đè
/var/www/html/magento2/vendor/magento/module-checkout/view/frontend/web/template/minicart/content.html
tập tin trong chủ đề tùy chỉnh của chúng tôi?
Câu trả lời:
đầu tiên chúng ta phải ghi đè các tệp web / mẫu vào tệp chủ đề magento của chúng tôi, trong trường hợp của tôi là content.html
Magento_Checkout/web/template/minicart/content.html
Sau khi thay đổi content.html
tệp, chúng tôi phải triển khai tệp tĩnh bằng lệnhphp bin/magento setup:static-content:deploy
HOẶC LÀ
Bạn phải xóa nội dung.html (tôi phải thay đổi nội dung trong tệp này) pub/static/frontend/Magento/buytea/en_US/Magento_Checkout/template/minicart
và tải lại trang một lần nữa.
Thay đổi được áp dụng.
magento2 |_ app |_ design |_ frontend |_ Magento |_luma |_Magento_Theme |_templates |_root.phtml composer.json registration.php theme.xml
và tham khảo magento.stackexchange.com/questions/138223/ Kẻ
Có một cách khác. Chúng ta nên biết rằng chúng ta có thể ghi đè lên mẫu html thông qua RequireJS. Chúng tôi không cần phải tạo một chủ đề tùy chỉnh . Trong mô-đun tùy chỉnh của bạn, tạo một requirejs-config.js
:
ứng dụng / mã / {Nhà cung cấp} / {Module_Name} /view/frontend/requirejs-config.js
var config = {
map: {
'*': {
'Magento_Checkout/template/minicart/content.html':
'Vendor_ModuleName/template/minicart/content.html'
}
}
};
Một lời giải thích nhiều hơn chúng ta có thể đọc thêm ở đây .
content.html
theo cách này thì tại sao nó lại cho tôi trống? minicart.
Vendor_ModuleName/template/minicart/content.html
trong pub/static
?
requirejs-config.js
availbale
Bạn có thể ghi đè lên điều này bằng cách thêm thư mục này vào chủ đề của bạn:
Magento_Checkout/web/template/minicart
Trong thư mục này, bạn có thể tạo tệp content.html. Sau khi thay đổi được thực hiện trong tệp này, hãy đảm bảo bạn xóa bộ đệm của trình duyệt để xem các thay đổi.
Mặc dù câu trả lời của Khoa TruongDinh thực sự hữu ích, nhưng vẫn còn một số chi tiết vì vậy đây là một ví dụ đầy đủ:
Ví dụ làm việc minicart, sao chép mẫu html vào:
[theme_path]/Magento_Theme/web/template/minicart/content.html
và trong các chủ đề requestjs-config.js =>
var config = {
"map": {
"*": {
'Magento_Checkout/template/minicart/content.html': 'Magento_Theme/template/minicart/content.html'
}
}
};
Xem thêm lỗi cốt lõi: https://github.com/magento/magento2/issues/5832
Mở tệp để sửa đổi nội dung minicart:
/app/design/frontend/your_theme/Theme/Magento_Checkout/web/template/minicart/content.html
Mở tệp để sửa đổi nội dung sản phẩm minicart:
/app/design/frontend/Eglo/Theme/Magento_Checkout/web/template/minicart/item/default.html
Sau khi sửa đổi, Bạn phải triển khai chủ đề bằng cách sử dụng bin/magento setup:static-content:deploy
nó sẽ hiển thị.
Nếu sửa đổi không được đưa vào thì sửa đổi tempaltes trong thư mục bên dưới để hiển thị các thay đổi thời gian chạy:
/pub/static/frontend/Your_theme/Theme/en_US/Magento_Checkout/template/minicart