Drupal 8 proporciona algunos bloques por defecto. P.ej. Site Branding
, Main Navigation
, Powered by Drupal
, Search
Etc.
He creado un tema que tiene Site branding
y Main Navigation
nombra regiones en las que se pueden colocar los bloques correspondientes.
Cuando habilito mi tema, los bloques Site Branding
& Main Navigation
se colocan en Header
& First Sidebar
region de mi tema por defecto respectivamente.
¿Cómo puedo colocar Site Branding
y Main Navigation
bloquear en sus respectivas regiones de forma predeterminada en la instalación del tema?
blocks
8
regions
theme-settings
kmdhrm
fuente
fuente
Respuestas:
En primer lugar, debe cambiar cada región de bloque deseada que desee manualmente
Administration>Structure>Block layout Tab
y luego ir a la función de exportación de configuración en:Administration>Configuration>Development>Configuration synchronization>Export Tab>Single item
para exportar cada una de las configuraciones de bloque para su tema.Luego, debe echar un vistazo a los archivos YAML generados y colocarlos en una nueva carpeta dentro de su tema en
/config/install
. luego desinstaló el tema y luego lo reinstaló como predeterminado.Resumen:
1. Instalar
MY_THEME
2. Coloque los bloques en las regiones deseadas
3. Exporte los archivos de configuración y elimínelos
uuid
y el hash de configuración central,por ejemplo
Site Branding
, elblock.block.MY_THEME_branding.yml
archivo de bloqueMY_THEME/config/optional
oMY_THEME/config/install
directorio (si está absolutamente seguro se cumplen todas las dependencias)MY_THEME
y borrar todas las cachésMY_THEME
nuevamentefuente
Encontró la respuesta:
Esto se puede hacer agregando un archivo yml (instancia de bloque) para cada bloque en la
theme/config/install
carpeta.Por ejemplo, para asignar el
Site Branding
bloque (nombre de la máquinasystem_branding_block
) a laSite Branding
región (nombre de la máquinasite_branding
) agregue el siguiente código en elconfig/install/block.block.THEME_NAME_branding.yml
archivo:fuente