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

Contrairement à Drupal 7, créer plusieurs instances de bloc à placer sur votre site est une tâche simple dans Drupal 8.

Dans ce guide, vous apprendrez comment ajouter un bloc de manière programmatique à l’interface de mise en page des blocs. Comment ajouter un formulaire de configuration (administratif) au bloc et comment le traiter. Enfin, vous découvrirez comment ajouter et afficher les valeurs de configuration par défaut pour ce formulaire.

05/07/2025, by Ivan

Les blocs dans Drupal 8 sont des instances de plugins de blocs.
Le gestionnaire de blocs de Drupal scanne vos modules à la recherche de classes contenant l’annotation @Block.

L’exemple de code ci-dessous utilise l’annotation @Block avec les propriétés « id » et « admin_label » pour définir un bloc personnalisé.

05/07/2025, by Ivan

Maintenant, disons que nous voulons ajouter la possibilité pour le constructeur de site d'entrer une partie de la configuration pour chaque instance de notre bloc personnalisé. Gardez toujours à l'esprit que toutes les configurations de construction de site dans Drupal 8 peuvent être exportées depuis le site de développement et importées sur le site de production (connu sous le nom de Gestion de la configuration).

05/07/2025, by Ivan

Ajoutez la méthode suivante dans la classe HelloBlock. Dans cet exemple, elle se trouve dans le fichier src/Plugin/Block/HelloBlock.php, mais, à mesure que vous pensez en mode plus orienté objet, l’emplacement physique dans la structure des fichiers est moins important que l’espace de noms. Si vous êtes un programmeur OO très rigoureux, vous maintenez ces deux éléments bien alignés.

05/07/2025, by Ivan

Pour utiliser la configuration des instances de bloc, nous pouvons modifier la méthode build() de la classe HelloBlock :

  /**
   * {@inheritdoc}
   */  
  public function build() {
    $config = $this->getConfiguration();

    if (!empty($config['hello_block_name'])) {
      $name = $config['hello_block_name'];
    }
    else {
      $name = $this->t('Ă  personne');
    }

    return [
      '#markup' => $this->t('Bonjour @name !', [
        '@name' => $name,
      ]),
    ];
  }

 

05/07/2025, by Ivan

Ce tutoriel a été initialement publié sur Web Wash. Cependant, Berdir a demandé si je pouvais le publier ici, donc le voilà.

Un module Drupal 7 permettait de stocker des exemples de code/extraits dans un champ. Il fournissait un champ personnalisé appelé « Champ d’extraits » affichant trois éléments de formulaire : description, code source, et mode de coloration syntaxique (langage de programmation).

Mais il est temps de mettre Ă  jour ce module pour Drupal 8.

05/07/2025, by Ivan

Les types de champs définissent les propriétés et le comportement des champs. Les types de champs sont définis comme des plugins, il est donc recommandé de se familiariser avec l’API des plugins avant de créer un nouveau type de champ.

Pour créer un type de champ dans Drupal 8, vous avez besoin d’une classe avec une annotation FieldType.

Emplacement de la classe du type de champ : MODULE_NAME/src/Plugin/Field/FieldType
Exemple : /modules/foo/src/Plugin/Field/FieldType/BazItem.php