web-dev-qa-db-fra.com

Comment puis-je intégrer une vue à l'intérieur d'un contenu d'un nœud?

Comment puis-je intégrer une vue à l'intérieur d'un contenu d'un nœud dans Drupal 8?

J'ai trouvé quelque chose de similaire, par exemple dans la question sur " Comment intégrer une vue à l'intérieur d'un nœud? " ou le module Viewfield , mais c'est tout pour Drupal 7.

J'ai essayé avec un champ de référence d'entité pointant vers une vue mais il n'affiche qu'une étiquette et dans l'onglet Gérer l'affichage, je ne peux choisir que parmi Étiquette et ID d'entité . J'ai besoin de quelque chose comme l'option "Entité rendue" qui est présente sur les champs de référence d'entité pointant vers d'autres nœuds.

enter image description here

8
Andrea

Option 1

Vous pouvez créer un bloc d'affichage . Ensuite, le bloc de vue sera disponible dans la section des blocs. Affectez le bloc d'affichage à une région et affichez-le sur des pages spécifiques si nécessaire.

enter image description here

Option 2

Créez un fichier de modèle twig pour votre nœud et utilisez

Twig Tweak

Le module Twig Tweak fournit une extension Twig avec quelques fonctions et filtres utiles qui peuvent améliorer l'expérience du développeur.

Ex: <dd>{{ drupal_view('view_name', 'page_1') }}</dd>

Option 3

Si vous utilisez Panneaux ou Display Suite , vous pouvez incorporer la vue en tant que champ.

9
No Sssweat

J'aide à maintenir la branche D8 de EVA , qui est fonctionnellement similaire à Twig Tweak 's drupal_view() mais fonctionne comme un affichage View qui s'attache aux ensembles d'entités spécifiés sous la forme d'un champ supplémentaire . Cela signifie que la vue peut être réorganisée au sein de l'entité Manage Display UI ou par exemple, supprimée dans un groupe de champs . Comme Twig La fonction de Tweak, elle permet de passer des filtres contextuels comme arguments.

Le cas d'utilisation d'EVA et de la solution Twig Tweaks diffère de celui de l'utilisation d'une référence d'entité avec viewsreference car ce dernier permet aux éditeurs de contenu de sélectionner différentes vues sur chaque entité . EVA et drupal_view() injectent la même vue sur chaque entité (bien que les arguments contextuels puissent changer les résultats de la vue).

Si vous créez un thème sur mesure, EVA peut ne présenter aucun avantage par rapport à twig block injection, mais si vous souhaitez permettre aux constructeurs de sites de gérer une vue comme s'il s'agissait d'un champ d'entité et configurer où il apparaît en utilisant l'interface utilisateur, jetez un oeil.

4
ahebrank

Il y a maintenant aussi un projet appelé viewsreference, qui vous permet d'incorporer des vues entières dans des nœuds via un champ (pensez à la référence d'entité, mais pour des vues complètes): https://www.drupal.org/project/viewsreference =

2
Narretz