twig

Twig debug : Configuración del archivo settings.local.php

twig

Entre las características novedosas que Drupal8 nos muestra, una de las más útiles e importantes es el modo debug de twig.

Twig es el sistema de templates PHP para esta versión, este cuenta con las características de ser flexible, rápido y seguro.  A su vez twig hace el theming más fácil y divertido de desarrollar partiendo desde la sencillez de su sintaxis. 

Definición de plantillas Twig en Drupal 8

miniatura de plantillas drupal

En Drupal 8 el marcado HTML con el cual trabajamos está definido en plantillas, prácticamente todo el sitio consta de ellas, las cuales están categorizadas para diferentes secciones o elementos manteniendo un estándar y usando sintaxis Twig y así conseguir el uso dinámico entre diferentes situaciones.

 

Mediante el uso de plantillas definimos la estructura HTML, con eso contemplamos cada marcado del sitio como es el de las páginas, las regiones, los bloques, nodos, campos, formularios y muchos más.

 

Twig tan fácil como el ABC

Twig as abc

Twig es un motor de plantillas para PHP, es utilizado en Drupal desde la versión 8, una de las características más reconocidas de Twig es el sencillo uso de su sintaxis.

 

Twig básicamente resume su sintaxis en las siguientes 3 formas:

{{ ‘ mostrar_algo ’ }}

Para imprimir valores, pueden ser cadenas de texto o variables el fin será mostrar el valor.

 

Algunos ejemplos:

En Drupal las regiones se imprimen de la siguiente manera:

Plantillas basadas en tipos de contenidos

Imagen de sugerencias de plantillas

Drupal 8 nos trae en su núcleo muchas plantillas correspondientes a cada parte del framework, cada una de ellas nos proporcionan el marcado html que se mostrará correspondientemente. Es una práctica común sobreescribir estos templates en un tema personalizado debido a que necesitamos un marcado diferente justo para el mismo, esto se realiza creando una plantilla con el mismo nombre del que queremos sobreescribir pero en nuestro tema personalizado, por ejemplo:

 

Drupal 8 configuraciones avanzadas en un tema

Cada tema tiene por defecto una página administrativa de configuración, el cual presenta un formulario con opciones básicas como “configuraciones para el logo” o “configuraciones para favicon”.

 

Drupal 8 nos permite modificar todo el formulario en el archivo theme-settings.php . Se debe usar el hook

THEME_NAME_form_system_theme_settings_alter(&$form, $form_state)

 

Filtro personalizado con Twig en Drupal 8

Gracias a las características de Twig nosotros contamos con más escalabilidad al momento de desarrollar temas en Drupal 8. En está oportunidad vamos a crear un filtro personalizado de twig el cual podremos usarlo dentro de las plantillas twig que tengamos en nuestro tema.

Necesitamos crear un módulo personalizado y con los siguientes archivos.
 

modulo: "bitw_filter" dentro de modules/custom/
bitw_filter/bitw_filter.info.yml
bitw_filter/bitw_filter.services.yml
bitw_filter/src/TwigExtension/ChangeText.php