Drupal 8 domyślnie udostępnia kilka bloków. Na przykład. Site Branding
, Main Navigation
, Powered by Drupal
, Search
Itd.
Stworzyłem motyw, który ma Site branding
i Main Navigation
nazwał regiony, w których można umieścić odpowiednie bloki.
Po włączeniu motywu Site Branding
i Main Navigation
bloki są domyślnie odpowiednio umieszczane w obszarze Header
& First Sidebar
region mojego motywu.
Jak mogę domyślnie umieścić Site Branding
i Main Navigation
zablokować odpowiednie regiony podczas instalacji motywu?
blocks
8
regions
theme-settings
kmdhrm
źródło
źródło
Odpowiedzi:
Przede wszystkim powinieneś zmienić każdy pożądany region bloku, w którym chcesz ręcznie,
Administration>Structure>Block layout Tab
a następnie przejść do funkcji eksportu konfiguracji o:Administration>Configuration>Development>Configuration synchronization>Export Tab>Single item
aby wyeksportować ustawienia bloku dla twojego motywu.Następnie powinieneś rzucić okiem na wygenerowane pliki YAML i umieścić je w nowym folderze w temacie
/config/install
. następnie odinstalowałeś motyw, a następnie ponownie go zainstalowałeś jako domyślny.Podsumowanie:
1. Instalacja
MY_THEME
2. Umieść bloki w pożądanych regionów
3. Pliki Export konfiguracyjne i usunąć z nich
uuid
i Core config hashna przykład
Site Branding
blokublock.block.MY_THEME_branding.yml
plikuMY_THEME/config/optional
lubMY_THEME/config/install
(jeśli masz absolutną pewność, że wszystkie zależności są spełnione)MY_THEME
i wyczyść wszystkie pamięci podręczneMY_THEME
ponownieźródło
Znaleziono odpowiedź:
Można to zrobić, dodając plik yml (instancja bloku) dla każdego bloku w
theme/config/install
folderze.Na przykład, aby przypisać
Site Branding
blok (nazwę maszynysystem_branding_block
) doSite Branding
regionu (nazwa maszynysite_branding
), dodaj następujący kod doconfig/install/block.block.THEME_NAME_branding.yml
pliku:źródło