Jak stworzyć motyw administratora dla Magento2


Odpowiedzi:


12

Proces jest podobny do tworzenia motywu dla interfejsu użytkownika.

1. Utwórz plik theme.xml w

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. Zarejestruj motyw w

app/design/adminhtml/<yourpackage>/<yourtheme>/registration.php

3. Włącz motyw.

you can enable frontend theme in admin, but for backend you need to enable the theme through di.xml 

w app/code/Magento/Theme/etc/di.xml, możesz znaleźć blok kodu poniżej. dodaj ten blok kodu do modułu i zmień adminhtml na pakiet administratora i nazwę motywu.

    <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>

Teraz możesz nadpisać coś w motywie administratora, aby zobaczyć, czy to działa.


dzięki, bardzo przydatne!
— LucScu,


1
po instalacji: zawartość statyczna: wdrożyć nic nie jest tworzone w moim nowym motywie adminhtml, czego mi brakuje? Próbuję kilka konfiguracji na composer.json, ale nadal nie mogę utworzyć nic w treści statycznej. Jakieś sugestie?
— AleGrinGo

2
Mój niestandardowy motyw administracyjny nie ma generowanych plików statycznych po uruchomieniusetup:static-content:deploy
— Vasilii Burlacu,

Ja też! jak to rozwiązujesz?
— LucScu,

2

System motywów nieco się zmienił w Magento 2, ale istnieją podobieństwa.
Najpierw musisz utworzyć folder motywów app/design/frontend. Struktura folderów jest podobna do struktury modułów. Musisz mieć nazwę dostawcy (w Magento 1 został nazwany pakiet) i folder motywów.

Więc stwórz app/design/frontend/Vendor/theme.
Następnie musisz zadeklarować swój motyw.
musisz utworzyć w folderze motywu plik theme.xmlo następującej treści:

<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>

następnie utwórz obraz podglądu motywu wewnątrz motywu w mediafolderze (utwórz go również) i wywołaj obraz podglądu preview.jpg(jak zadeklarowano w powyższym pliku XML).

Teraz Twój motyw jest ustawiony.
Jeśli chcesz zmienić coś z motywu nadrzędnego, wystarczy skopiować plik, który chcesz zmienić (układ, szablon) do motywu z określonego modułu i wykonać magię.

Na przykład, jeśli chcesz zmienić sposób, że widok produkt strona wygląda skopiować plik app/code/Magento/Catalog/view/frontend/layout/catalog_product_view.xmldo app/design/frontend/Vendor/theme/Magento_Catalog/layout/catalog_product_view.xmli zmienić to, co trzeba.

Więcej informacji na temat tworzenia motywu można znaleźć tutaj .
Znalazłem również przykładowy motyw, którego możesz użyć jako wskazówki .
Możesz także zainstalować oficjalne przykładowe dane, a otrzymasz motyw o nazwie, w lumaktórej możesz zobaczyć strukturę folderów.


Dziękuję za odpowiedź! Ale myślę, że muszę przełożyć moje złe, przepraszam.
— Mathieu,

Chcę zastąpić motyw zaplecza (motyw administratora), a nie interfejs użytkownika.
— Mathieu,

To nie jest problem. Kroki są takie same, ale zamiast frontendużywać adminhtmlw strukturze folderów. Zasada jest taka sama.
— Marius

Ok dzięki. Ale nie rozumiem, jak zadeklarować nowy motyw dla administratora. Czy jest: „app / code / Magento / Backend / etc / config.xml”?
— Mathieu,

<stores> <admin> <design> <package> <name> default </name> </package> <theme> <default> backend </default> </theme> </design> </admin> </ przechowuje >
— Mathieu,

2

W przypadku problemów z generowaniem plików statycznych dla nowo utworzonego motywu administratora. Aby magento generowało pliki dla motywu zaplecza podczas instalacji: zawartość statyczna: wdrażanie, app/design/adminhtml/<yourpackage>/<yourtheme>/web/ folder powinien zawierać pliki. Każdy plik fikcyjny wykonałby zadanie.


Utworzyłem pusty plik main.css w folderze internetowym i nadal nie otrzymuję żadnych plików statycznych
— Scott

@ Scott Czy wykonałeś również wszystkie wymagane kroki, które Marius zasugerował w swojej odpowiedzi? A jak dokładnie wygląda ścieżka względna do main.css przy okazji?
— drevidchuck

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.