Magento 2: Làm cách nào để ghi đè tệp html mẫu mặc định của giỏ hàng nhỏ?


12

Làm thế nào để ghi đè /var/www/html/magento2/vendor/magento/module-checkout/view/frontend/web/template/minicart/content.htmltập tin trong chủ đề tùy chỉnh của chúng tôi?

Câu trả lời:


16

đầ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.htmltệ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/minicartvà tải lại trang một lần nữa.

Thay đổi được áp dụng.


1
Đang cố gắng ghi đè trang chủ. Nhưng không hoạt động
Ankit Shah

Trang nào, xin vui lòng cho tôi đường dẫn
Rakesh Jesadiya

Tôi có cấu trúc thư mục bên dưới magento2 |_ app |_ design |_ frontend |_ Magento |_luma |_Magento_Theme |_templates |_root.phtml composer.json registration.php theme.xmlvà tham khảo magento.stackexchange.com/questions/138223/ Kẻ
Ankit Shah

bạn phải xác định chủ đề tùy chỉnh của mình, bên trong luma nó không hoạt động, nếu bạn muốn thay đổi bên trong chủ đề luma thì hãy đến nhà cung cấp / magento / theme-frontend-luma của bạn
Rakesh Jesadiya

Tôi muốn ghi đè Luma Theme Không thể làm điều đó?
Ankit Shah

10

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 .


Chào. Khi tôi ghi đè content.htmltheo cách này thì tại sao nó lại cho tôi trống? minicart.
chirag

Có tập tin này Vendor_ModuleName/template/minicart/content.htmltrong pub/static?
Khoa TruongDinh

có .. và cả mã cấu hình của tôi trong requirejs-config.jsavailbale
chirag

Khi tôi thấy giao diện điều khiển, nó cũng lấy tập tin của tôi thay vì lõi. nhưng không biết tại sao nó không hiển thị gì.
chirag

Đã thử xóa Cache của trình duyệt?
Khoa TruongDinh

7

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.


Tôi đã thử cùng một bạn đề nghị này nhưng không hoạt động.
Rakesh Jesadiya

Bạn đã triển khai các tệp tĩnh? Và xóa bộ nhớ cache?
Silvan

1
có, nó hoạt động tốt sau khi xóa các tệp tĩnh và nó sẽ tự động tạo tệp mới khi tải trang tiếp theo.
Rakesh Jesadiya

0

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


-1

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:deploynó 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

bạn không nên sửa đổi nội dung trong pub / static .. dù sao nó cũng sẽ bị ghi đè bởi lệnh triển khai tĩnh ...
OZZIE
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.