logo

Extra Block Types (EBT) - Nueva experiencia con Layout Builder❗

Extra Block Types (EBT): tipos de bloques con estilo y personalizables: Presentaciones de diapositivas, Pestañas, Tarjetas, Acordeones y muchos más. Configuraciones integradas para fondo, DOM Box y plugins de JavaScript. Experimenta hoy el futuro de la construcción de diseños.

Módulos de demostración EBT Descargar módulos EBT

❗Extra Paragraph Types (EPT) - Nueva experiencia con Paragraphs

Extra Paragraph Types (EPT): conjunto de módulos basado en párrafos de forma análoga.

Módulos de demostración EPT Descargar módulos EPT

Scroll

La definición de un tema se realiza mediante un archivo .info.yml.

19/06/2025, by Ivan

Para crear un tema en Drupal 8, primero debe crear un archivo THEMENAME.info.yml que proporcione metadatos sobre su tema a Drupal. Esto es similar a cómo se definen los módulos y los perfiles de instalación, por lo que es importante establecer la clave "type" en el archivo file.info.yml como "theme" para distinguirlo.

Esta página contiene un ejemplo de archivo THEMENAME.info.yml y una visión general de la información que puede contener el archivo.

Crear el archivo .info.yml

Cree el archivo .info.yml en la raíz de la carpeta de su tema. La carpeta debe tener el mismo nombre que el archivo .info.yml. Por lo tanto, si su tema se llama "Fluffiness", la carpeta será "fluffiness/" y el archivo .info.yml será "fluffiness/fluffiness.info.yml". Si el archivo está presente con las propiedades mínimas necesarias (nombre, tipo y core), su tema aparecerá en su sitio web en la sección "Apariencia" (http://example.com/admin/appearance). No olvide elegir un nombre de tema que no esté ya en uso por un módulo u otro tema. El nombre del tema debe ser único dentro de la configuración de Drupal. De lo contrario, los componentes del tema no se cargarán correctamente.

Reemplace los espacios en el nombre del tema por guiones bajos en el nombre de la carpeta (y del archivo .info.yml).

Si no está familiarizado con la estructura de archivos YAML, lea la introducción rápida al formato de archivos YAML.

  • No se permiten tabulaciones. Use SOLO espacios.
  • Las propiedades y listas DEBEN tener una sangría de dos (2) espacios.

Ejemplo

name: Fluffiness
type: theme
description: 'Un tema adorable que ofrece más ternura.'
core: 8.x
libraries:
  - fluffiness/global-styling
base theme: classy
regions:
  header: Header
  content: Content
  sidebar_first: 'Sidebar first'
  footer: Footer

En su sitio Drupal, puede encontrar más ejemplos de archivos .info.yml mirando los temas provistos por el núcleo. Por ejemplo, abra la carpeta core/themes/stark y busque el archivo stark.info.yml.

Pares clave/valor

Los siguientes pares clave/valor proporcionan metadatos sobre su tema y definen algunas características básicas. (Vea \Drupal\Core\Extension\InfoParserInterface::parse().)

name - nombre (obligatorio)

Nombre legible por humanos. Aparecerá en la página de "Apariencia" donde se habilita el tema.

name: Fluffiness

type - tipo (obligatorio)

Indica el tipo de extensión, es decir, "module", "theme" o "profile". Para temas siempre debe ser "theme". Este valor es sensible a mayúsculas y minúsculas.

type: theme

description - descripción (opcional)

Descripción que se muestra en la página "Apariencia".

description: Un tema adicional adorable para Drupal disponible en gris y azul.

package - paquete (opcional)

Define un "paquete" que permite agrupar temas juntos.

package: Core

core (obligatorio)

Define la versión del núcleo de Drupal con la que el tema es compatible.

core: 8.x

php (opcional)

Versión mínima requerida de PHP. Por defecto, utiliza el valor de la constante DRUPAL_MINIMUM_PHP.

php: 5.5.9

version - versión (opcional)

Define la versión. Para temas alojados en drupal.org, el número de versión es rellenado por el script de empaquetado. No la escriba manualmente, pero excluya la línea por completo.

version: 8.x-1.0

libraries - bibliotecas (opcional)

Lista de bibliotecas (que pueden contener recursos CSS y JavaScript) para agregar a todas las páginas donde el tema está activo. Más información sobre temas y bibliotecas de recursos.

libraries:
  - fluffiness/global-styling

libraries-override - sobreescritura de bibliotecas (opcional)

Conjunto de bibliotecas y recursos para sobreescribir. Lea más sobre bibliotecas que sobrescriben y extienden.

libraries-override:
  contextual/drupal.contextual-links:
    css:
      component:
        /core/themes/stable/css/contextual/contextual.module.css: false

libraries-extend - extensión de bibliotecas (opcional)

Conjunto de bibliotecas y recursos que se agregan al conectar una biblioteca. Lea más sobre bibliotecas que sobrescriben y extienden.

libraries-extend:
  core/drupal.user: 
    - classy/user1
    - classy/user2

base theme - tema base (recomendado)

Un tema puede heredar recursos de otro tema, indicándolo como tema base. Se recomienda usar classy o stable (stable es el predeterminado si no se especifica la clave), ya que facilita que su tema herede futuros cambios en el tema base.

base theme: classy

hidden (opcional)

Indica si se debe ocultar el tema de la página "Apariencia" para que no pueda ser activado o desactivado mediante la interfaz de usuario.

hidden: true

engine (opcional)

Motor de tema. Por defecto es "twig".

engine: twig

logo - logotipo (opcional)

Vea la entrada de cambio: https://www.drupal.org/node/2939152

Ruta del logotipo relativa al archivo .info.yml del tema. Por defecto, Drupal buscará un archivo llamado "logo.svg" en la raíz de la carpeta del tema y lo usará como logotipo del tema.

logo: images/logo.png

screenshot - captura de pantalla (opcional)

Ruta a la captura de pantalla relativa al archivo .info.yml del tema. Las capturas deben tener un ancho de 588 píxeles y una altura de 438 píxeles, aunque se muestran a un tamaño menor. Por defecto, Drupal buscará un archivo llamado "screenshot.png" en la raíz del tema y lo usará como imagen del tema en la página "Apariencia".

screenshot: fluffiness.png

regions - regiones (opcional)

Lista de regiones temáticas. (Tenga en cuenta que las claves de las regiones no llevan guion). Más información sobre agregar regiones a un tema.

regions:
  header: Header
  content: Content
  sidebar_first: 'First sidebar'

regions_hidden (opcional)

Lista de regiones heredadas a eliminar.

regions_hidden:
  - sidebar_last

features - características (opcional)

Lista de características para mostrar en la página de "Configuración" del tema.

features:
  - comment_user_verification
  - comment_user_picture
  - favicon
  - logo
  - node_user_picture

stylesheets-remove - eliminar hojas de estilo (no recomendado)

Lista de hojas de estilo de otros módulos o temas para eliminar de todas las páginas donde el tema está activo. Cada valor debe ser una ruta completa relativa al documento para evitar ambigüedad cuando existen varios archivos con el mismo nombre. En los casos en que el archivo es parte de una biblioteca perteneciente a un módulo o tema, en lugar de la ruta completa puede usarse un token en la forma @module_or_theme_name. Tenga en cuenta que cuando se usa el token, el valor debe estar entre comillas, porque "@" es un indicador reservado en YAML. Nota: esta clave está obsoleta y será eliminada en Drupal 9. En la mayoría de los casos, debería usarse libraries-override.

stylesheets-remove:
  - core/assets/vendor/normalize-css/normalize.css
  - '@classy/css/components/tabs.css'

ckeditor_stylesheets (opcional)

Lista de hojas de estilo agregadas al iframe de CKEditor.

ckeditor_stylesheets:
  - https://fonts.googleapis.com/css?family=Open+Sans
  - css/base/elements.css

Más información

Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.