Tại sao sử dụng một chủ đề khi bạn có các mô-đun?


9

Bên trong mô-đun tùy chỉnh của tôi, tôi đã thêm tệp

Vendor/Theme/view/layout/default.xml

mà tôi đang sử dụng để ghi đè rất nhiều khuôn mẫu toàn cầu của trang web với các mẫu / khối / bố cục từ mô-đun tùy chỉnh. Tôi cũng đang đính kèm kiểu dáng toàn cầu của riêng tôi tồn tại trong view/webthư mục trong mô-đun đó.

Tôi có nên sử dụng một chủ đề cho việc này thay thế? Có một lập luận tốt cho một mẫu thiết kế so với mẫu kia không? Ví dụ. sử dụng app/designhơn app/code?

Câu trả lời:


13

Bạn có thể làm bất cứ điều gì bạn thích, nhưng nếu đó là điều đúng đắn thì đó là câu hỏi ở đây.

Mô-đun

Các mô-đun nên thêm hoặc thay đổi chức năng của webshop và nên / có thể được chuyển sang các hội thảo Magento 2 khác. Các mô-đun có thể có bố cục, mẫu và kiểu dáng riêng và có thể thay đổi bố cục chung, mẫu và kiểu dáng nếu điều đó là cần thiết cho chức năng của mô-đun của bạn. Các mô-đun chủ yếu tập trung vào một chức năng duy nhất và do đó (tương đối) nhỏ và điều đó làm cho các hội thảo Magento 2 có rất nhiều.

Các mô-đun có thể dễ dàng được kích hoạt và vô hiệu hóa, điều này sẽ khiến chức năng cụ thể mà chúng thêm hoặc thay đổi xuất hiện hoặc biến mất. Nó không nên làm cho toàn bộ trang web thay đổi.

Chủ đề

Chủ đề thay đổi bố cục, khuôn mẫu và kiểu dáng của webshop toàn cầu và nên thêm hoặc xóa không có chức năng. Mặc dù các chủ đề được đóng gói (trả phí) có thể bao gồm các tính năng đặc biệt, nhưng điều này thường được thực hiện trong các mô-đun đi kèm với một chủ đề như vậy. Các chủ đề phải được hoán đổi cho nhau, do đó có thể được áp dụng cho bất kỳ webshop Magento 2 nào, nhưng một webshop Magento 2 có thể chuyển đổi chủ đề một cách dễ dàng (hoặc có nhiều ví dụ trong thiết lập nhiều cửa hàng).


Vì vậy, nếu bạn hỏi nơi "ghi đè nhiều khuôn mẫu toàn cầu của trang web bằng các mẫu / khối / bố cục" , câu trả lời sẽ có trong một chủ đề .

Một lần nữa, bạn có thể làm bất cứ điều gì bạn thích, nhưng nếu ai đó sẽ tham gia hoặc tiếp quản sự phát triển, anh ấy / cô ấy sẽ mong đợi các thay đổi chủ đề toàn cầu của trang web sẽ nằm trong một chủ đề chứ không phải trong một mô-đun. Khi mọi thứ không được thực hiện như mong đợi, điều này sẽ làm chậm sự phát triển và khiến việc bảo trì khó khăn.


1
Chính xác, tôi muốn làm mọi thứ đúng cách. Đánh giá cao câu trả lời hữu ích, tôi sẽ bắt đầu chuyển một số thay đổi này sang một chủ đề.
Daniel Thompson

3

Câu trả lời này là những gì tôi nghĩ rằng đây không thể là tiêu chuẩn Magento

Khi nào nên sử dụng chủ đề cho bố cục và mẫu và khi nào nên sử dụng Mô-đun

Chủ đề

Khi bạn cần thay đổi của mình phải là một nơi bạn cần hiển thị các thay đổi của mình sẽ khác, ở cửa hàng hoặc trang web khác nhau và bạn có nhiều chủ đề thì bạn có thể thay đổi trực tiếp trong chủ đề

Mô-đun

Khi bạn đang phát triển bất kỳ mô-đun hoặc tiện ích mở rộng nào cho yêu cầu và bạn nghĩ rằng các thay đổi của mình sẽ có tính toàn cầu thì bạn đặt bố cục và mẫu trong chính mô-đun

Những gì tôi đề nghị luôn tạo một bản sao chính trong mô-đun và nếu bạn muốn thay đổi theo yêu cầu của mình thì hãy sao chép trong chủ đề và thực hiện thay đổi trong các mẫu.

Bằng cách này, bạn có thể giải quyết các vấn đề như nếu chủ đề bị thay đổi thì các tệp mô-đun của bạn cũng ở đó

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.