Câu trả lời:
Quá trình này khá giống với việc tạo một chủ đề cho frontend.
1. Tạo chủ đề trong
app/design/adminhtml/<yourpackage>/<yourtheme>/theme.xml
<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
<title>Magento 2 backend</title>
<parent>Magento/backend</parent> // set parent theme
</theme>
2. Đăng ký chủ đề trong
app/design/adminhtml/<yourpackage>/<yourtheme>/registration.php
3. Kích hoạt chủ đề.
you can enable frontend theme in admin, but for backend you need to enable the theme through di.xml
trong app/code/Magento/Theme/etc/di.xml
, bạn có thể tìm thấy khối mã bên dưới. thêm khối mã này vào mô-đun của bạn và thay đổi adminhtml thành gói quản trị và tên chủ đề.
<type name="Magento\Theme\Model\View\Design">
<arguments>
<argument name="themes" xsi:type="array">
<item name="frontend" xsi:type="string">Magento/luma</item>
<item name="adminhtml" xsi:type="string">Magento/backend</item>
</argument>
</arguments>
</type>
Bây giờ bạn có thể ghi đè lên một cái gì đó trong chủ đề quản trị của bạn để xem nó có hoạt động không.
setup:static-content:deploy
Hệ thống chủ đề đã thay đổi một chút trong Magento 2 nhưng có những điểm tương đồng.
Trước tiên, bạn cần tạo một thư mục chủ đề trong app/design/frontend
. Cấu trúc thư mục tương tự như cấu trúc mô-đun. Bạn phải có một tên nhà cung cấp (trong Magento 1 được gọi là gói) và một thư mục chủ đề.
Vì vậy, tạo ra app/design/frontend/Vendor/theme
.
Sau đó, bạn phải khai báo chủ đề của bạn.
bạn cần tạo trong thư mục chủ đề của mình một tệp theme.xml
có nội dung sau:
<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Config/etc/theme.xsd">
<title>Your theme name</title>
<parent>Magento/blank</parent><!-- or any other parent theme similar to Magento 1.9 -->
<media>
<preview_image>media/preview.jpg</preview_image>
</media>
</theme>
sau đó tạo hình ảnh xem trước của chủ đề của bạn bên trong chủ đề của bạn trong media
thư mục (cũng tạo hình này) và gọi hình ảnh xem trước preview.jpg
(như được khai báo trong XML ở trên).
Bây giờ chủ đề của bạn đã được thiết lập.
Nếu bạn muốn thay đổi một cái gì đó từ chủ đề gốc, tất cả những gì bạn cần làm là sao chép tệp bạn muốn thay đổi (bố cục, mẫu) sang chủ đề của bạn từ mô-đun cụ thể và thực hiện phép thuật của bạn.
Ví dụ: nếu bạn muốn thay đổi cách trang xem sản phẩm trông giống như sao chép tệp app/code/Magento/Catalog/view/frontend/layout/catalog_product_view.xml
vào app/design/frontend/Vendor/theme/Magento_Catalog/layout/catalog_product_view.xml
và thay đổi những gì bạn cần.
Thông tin chi tiết về việc tạo một chủ đề có thể được tìm thấy ở đây .
Tôi cũng tìm thấy một chủ đề mẫu mà bạn có thể sử dụng làm hướng dẫn .
Bạn cũng có thể cài đặt dữ liệu mẫu chính thức và bạn sẽ nhận được một chủ đề được gọi là luma
nơi bạn có thể thấy cấu trúc thư mục.
frontend
sử dụng adminhtml
trong cấu trúc thư mục. Nguyên tắc là như nhau.
Trong trường hợp ai đó có vấn đề với việc tạo tệp tĩnh cho chủ đề quản trị mới được tạo. Để magento tạo tệp cho chủ đề phụ trợ khi cài đặt: static-content: triển khai, app/design/adminhtml/<yourpackage>/<yourtheme>/web/
thư mục nên chứa tệp. Bất kỳ tập tin giả sẽ làm công việc.
Để tạo chủ đề quản trị, vui lòng theo các liên kết dưới đây, nó phải hoạt động.