Pregunta:
Con nuestra capacidad para crear tipos de bloques personalizados y agregar campos adicionales manualmente en Drupal 8, ¿existe una convención de nomenclatura simple para crear bloques – custom_block_type.html.twig para manejar el diseño de campos adicionales?
Ejemplo: uso de sugerencias de enlaces de tema para tipos de contenido: nodo – content_type.html.twig
¿Se pueden manejar los tipos de bloques personalizados de esta manera sin seguir la ruta del módulo?
Respuesta:
Aquí hay una forma de hacerlo, en un módulo o tema:
function MYMODULEORTHEME_theme_suggestions_block_alter(&$suggestions, $variables) {
$content = $variables['elements']['content'];
if (isset($content['#block_content']) && $content['#block_content'] instanceof \Drupal\block_content\BlockContentInterface) {
$suggestions[] = 'block__' . $content['#block_content']->bundle();
}
}
Resultados en sugerencias de plantillas como:
block--custom-block-type.html.twig
La instanceof
podría ser demasiado cautelosa, tómala o déjala.