Aller au contenu principal
Menu
Offcanvas

Comment ne pas afficher un contenu sur sa propre page (full view mode) ?

Vous avez peut-être un type de contenu qui ne devrait jamais être affiché sur sa propre page, comme un type de contenu d'image affiché dans un carrousel. Rabbit Hole peut empêcher ce nœud d'être accessible sur sa propre page, via node/xxx.

Que fait le module Rabbit Hole ?

Vous avez peut-être un type de contenu qui ne devrait jamais être affiché sur sa propre page, comme :

  • Un type de contenu "image" affiché dans un carrousel.
  • Un type de contenu “actualités” qui n’est affiché que dans une page de liste ou dans une vue type bloc sur la page d’accueil par exemple. Dans ce cas, les moteurs de recherche vont indexer votre contenu et les utilisateurs pourront y accéder. Comme ce type de contenu n’est pas prévu pour être accessible, vous n’avez pas de template et le rendu n'est pas correct
  • Un terme de taxonomie qui possède sa propre page alors qu’il n’est pas utile ni prévu d'afficher une page pour chaque terme.

Rabbit Hole peut empêcher ce nœud d'être accessible sur sa propre page, via node/xxx.

Le module fonctionne en fournissant plusieurs options pour contrôler ce qui doit se passer lorsque l'entité est affichée sur sa propre page.
Vous avez la possibilité de :

  • Afficher une page "accès refusé".
  • Afficher une page "non trouvée".
  • Faire une redirection page vers n'importe quel chemin ou URL externe (par exemple la page de liste).
  • Ou simplement afficher l'entité (comportement normal).

Le module est configurable par bundle et par entité. Il existe également une autorisation qui permet à certains rôles de surcharger complètement Rabbit Hole et ne pas être redirigé par exemple.

Entités prises en charge

Ce module comprend des sous-modules chargés d'ajouter ce comportement à différentes entités. Les entités actuellement prises en charge sont :

  • Nodes
  • Taxonomy terms
  • Users
  • Files
  • Field collection
  • Profile 2
  • Bean

Autres possibilité avec le contrôle de l'affichage des pages

Vous souhaitez accorder ou refuser l'accès des utilisateurs à des types d'entités ou à des entités Drupal spécifiques en fonction des rôles des utilisateurs, par exemple, pour afficher du contenu payant aux utilisateurs avec un abonnement. Des rôles d'utilisateurs spéciaux peuvent être autorisés à contourner l'action Rabbit Hole.

Créer un rôle VIP

Lorsque vous créez un rôle VIP, seuls les utilisateurs payants seront autorisés à voir le contenu. Sans abonnement payant, l'utilisateur sera un utilisateur authentifié.

  1. Dans la barre d'outils d'administration, cliquez sur Personnes -> Rôles -> Ajouter un rôle
  2. Donnez le nom du rôle en tant que VIP
  3. Cliquez sur Enregistrer

Créer des utilisateurs

Ici, créons un utilisateur authentifié et un utilisateur VIP.

  1. Cliquez sur Personnes -> Ajouter un utilisateur
  2. Entrez les données et sélectionnez le rôle en tant que VIP
  3. Cliquez sur Créer un nouveau compte

De la même manière, créez un autre utilisateur avec le rôle Authentifié. Après cela, la page Personnes ressemblera à ceci.

Créer un type de contenu VIP

  1. Cliquez sur Structure -> Type de contenu -> Ajouter un type de contenu
  2. Donnez un nom et une description appropriés pour le type de contenu
  3. Cliquez sur Paramètres de Rabbit Hole
  4. Conservez l'option "Autoriser le remplacement de ces paramètres pour des entités individuelles" cochée. Il permettra d'administrer les autorisations sur une base de nœud
  5. Choisissez l'option de redirection et entrez l'URL du site vers lequel vous souhaitez rediriger
  6. Cliquez sur Enregistrer et gérer les champs.

Définir les autorisations d'accès

Les utilisateurs ayant un rôle VIP devront pouvoir contourner le contrôle Rabbit Hole.

  1. Cliquez sur Personnes -> Rôles
  2. Cliquez sur la flèche déroulante du rôle VIP et cliquez sur Modifier les autorisations
  3. Recherchez et vérifiez l'action Contourner Rabbit Hole pour l'autorisation de contenu. Enregistrez les autorisations.

Autres ressources utiles

Ajouter un commentaire

Articles similaires

Comment supprimer les changements locaux avec git que l'on n'a pas commit ?

LIRE LA SUITE