Cet article plonge dans les techniques avancées de Drupal 7 View, en se concentrant sur les relations, les filtres contextuels et la réécriture de champ. S'appuyant sur une compréhension de base de la création de vues, nous améliorerons les fonctionnalités pour créer des écrans plus dynamiques et personnalisés.
Concepts clés:
Améliorons une vue d'article simple affichant uniquement des titres avec trois améliorations:
1. Établir des relations:
La table de nœud ne contient que l'ID utilisateur de l'auteur (uid
). Pour afficher le nom d'utilisateur, nous avons besoin d'une relation au tableau user
. Ajoutez une nouvelle relation de type "Contenu: auteur," lui donnant un nom descriptif comme "Content Auteur". Laissez d'autres paramètres à leurs valeurs par défaut.
Maintenant, ajoutez un champ "utilisateur: nom". Le paramètre "relation" sélectionnera automatiquement "l'auteur de contenu", indiquant que les données du champ sont extraites via la relation établie. La sauvegarde ajoute le nom d'utilisateur de l'auteur à l'aperçu de la vue. Les relations peuvent être enchaînées pour rejoindre plusieurs tables.
2. Implémentation de filtres contextuels:
Les filtres contextuels fonctionnent de manière similaire aux filtres réguliers mais tirent leurs valeurs à partir du contexte, et non de l'entrée manuelle. Ajoutez un filtre contextuel de type "Contenu: auteur UID". Sous "Lorsque la valeur du filtre n'est pas dans l'URL," Sélectionnez "Fournir la valeur par défaut" et choisissez "ID utilisateur à partir de l'utilisateur" comme type. Cela filtre dynamiquement la vue pour afficher uniquement les articles par l'utilisateur actuellement connecté.
3. Réécriture des champs pour la sortie améliorée:
Pour combiner le titre et le nom d'utilisateur de l'auteur, réorganisez les champs afin que le titre soit le dernier. En effet, la réécriture de champs utilise des jetons à partir des champs précédents. Modifiez le champ de nom d'utilisateur de l'auteur, décochez "Créer une étiquette" et vérifiez "Exclure de l'affichage."
Ensuite, modifiez le champ de titre et vérifiez "Réécrivez la sortie de ce champ". Utilisez les modèles de remplacement (par exemple, [title]
, [name]
) dans la zone de texte de réécriture. Pour atteindre la sortie souhaitée, utilisez:
<code>[title] ([name])</code>
Cependant, cela pourrait casser la liaison si le "lien ce champ au contenu d'origine" est vérifié. Pour maintenir la liaison propre, ajoutez un champ "Content: Path" (exclure de l'affichage), placez-le avant le titre et réécrivez le champ de titre comme:
<code><a href="https://www.php.cn/link/fc0fef626c330003179e5377ee02750f">[title]</a> ([name])</code>
Cela garantit correctement le titre, tandis que le nom d'utilisateur (entre parenthèses) est lié au profil utilisateur.
Conclusion:
Ce tutoriel a couvert les relations, les filtres contextuels et la réécriture de champ dans les vues Drupal 7. La maîtrise de ces techniques vous permet de créer des vues très dynamiques et personnalisées, améliorant considérablement la fonctionnalité de votre site. La complexité des vues est atténuée par la compréhension de ces concepts de base.
Questions fréquemment posées (FAQ):
La section FAQ fournie reste largement inchangée, car elle aborde avec précision les questions courantes concernant les vues Drupal 7 et les filtres contextuels. Les informations sont cohérentes et utiles aux utilisateurs.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!