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

9.4. Création de pages pour un compte premium.

07/07/2025, by Ivan

Dans cette leçon, nous allons étendre les fonctionnalités de notre module et créer un contenu qui sera accessible uniquement aux utilisateurs enregistrés ou aux utilisateurs ayant un rôle spécifique.

Les exemples de code sont disponibles sur github :

https://github.com/levmyshkin/drupalbook8

Commençons par ajouter un nouveau fichier YML directement dans le dossier de notre module drupalbook :

access premium pages:
  title: 'Accès aux pages Premium'
  description: 'Une permission personnalisée pour vos pages.'
  restrict access: TRUE

Ensuite, allez sur la page des droits d’accès et attribuez l’accès au contenu Premium aux rôles nécessaires, je vais le faire pour les utilisateurs enregistrés :

/admin/people/permissions

permission

Maintenant, dans drupalbook.routing.yml, créez une nouvelle route dans laquelle nous indiquons notre nouveau droit et une nouvelle méthode pour afficher le contenu :

drupalbook.private_content:
   path: '/private-page'
   defaults:
     _controller: '\Drupal\drupalbook\Controller\FirstPageController::privateContent'
     _title: 'Contenu privé'
   requirements:
     _permission: 'access premium pages'

Après avoir ajouté la nouvelle route, vous devez vider le cache.

Nous devons aussi ajouter la méthode privateContent() à notre classe FirstPageController :

/**
 * Retourne une page privée.
 *
 * @return array
 *   Un tableau simple rendable.
 */
public function privateContent() {
  $element = [
    '#markup' => 'Contenu privé',
  ];
  return $element;
}

Vous pouvez maintenant vider le cache et vérifier que notre page n’est pas accessible aux utilisateurs non enregistrés.

drupalbook

Les exemples de code sont disponibles sur github :

https://github.com/levmyshkin/drupalbook8