logo

Types de blocs supplémentaires (EBT) – Nouvelle expérience de Layout Builder❗

Types de blocs supplémentaires (EBT) – types de blocs stylisés et personnalisables : diaporamas, onglets, cartes, accordéons et bien d’autres. Paramètres intégrés pour l’arrière-plan, la boîte DOM, les plugins JavaScript. Découvrez dès aujourd’hui le futur de la création de mises en page.

Démo des modules EBT Télécharger les modules EBT

❗Types de paragraphes supplémentaires (EPT) – Nouvelle expérience Paragraphes

Types de paragraphes supplémentaires (EPT) – ensemble de modules basé sur les paragraphes analogiques.

Démo des modules EPT Télécharger les modules EPT

Défilement
05/07/2025, by Ivan

Menu

Twig fournit plusieurs fonctions utiles que vous pouvez utiliser directement dans les templates.

Liste des fonctions Twig

Le cœur Drupal ajoute plusieurs fonctions personnalisées spécifiques à Drupal. Elles sont définies dans la classe TwigExtension.

Vous pouvez aussi définir vos propres fonctions Twig dans un module personnalisé (mais pas dans un thème). Pour un exemple, consultez le fichier core/modules/system/tests/modules/twig_extension_test/src/TwigExtension/TestExtension.php.

attach_library($library)

Attache une bibliothèque d’assets au template.

{{ attach_library('classy/node') }}

create_attribute($attributes)

Créez un nouvel objet Attribute dans un template Twig via la fonction create_attribute(). Ces objets peuvent être manipulés comme les autres objets Attribute dans Twig.

Voir l’annonce de changement : https://www.drupal.org/node/2818293

{% set my_attribute = create_attribute() %}
{%
  set my_classes = [
    'kittens',
    'llamas',
    'puppies',
  ]
%}
<div{{ my_attribute.addClass(my_classes).addAttribute('id', 'myUniqueId') }}>
  {{ content }}
</div>
<div{{ create_attribute({'class': ['region', 'region--header']}) }}>
  {{ content }}
</div>

file_url($uri)

Cette fonction helper prend un URI de fichier et génère l’URL relative correspondante.

{{ file_url(node.field_example_image.entity.uri.value) }}

link($text, $uri, $attributes)

Cette fonction helper prend en premier paramètre text et en second uri.

Exemple :

{{ link(item.title, item.uri, { 'class':['foo', 'bar', 'baz']} ) }}

path($name, $parameters, $options)

Génère un chemin URL [relatif] en fonction du nom et des paramètres de route.

{# Lien vers la vue frontpage. #}
<a href="{{ path('view.frontpage.page_1') }}">{{ 'View all content'|t }}</a>

{# Lien vers la page profil d’un utilisateur. #}
<a href="{{ path('entity.user.canonical', {'user': user.id}) }}">{{ 'View user profile'|t }}</a>

{# Lien vers la page d’un nœud. #}
<a href="{{ path('entity.node.canonical', {'node': node.id}) }}">{{ 'View node page'|t }}</a>

Les fonctions url et path sont proches de celles définies dans \Symfony\Bridge\Twig\Extension\RoutingExtension.

url($name, $parameters, $options)

Génère une URL absolue en fonction du nom de route et des paramètres :

<a href="{{ url('view.frontpage.page_1') }}">{{ 'View all content'|t }}</a>

Génère une URL absolue vers l’URL actuelle :

<a href="{{ url('<current>') }}">{{ 'Reload'|t }}</a>

Génère une URL absolue vers la page d’accueil :

<a href="{{ url('<front>') }}">{{ 'Home'|t }}</a>