Ex 3 views: Contextual Filters et Relations (Definitive Guide to Drupal 7)
Les Filtres Contexuels sont des données inputs qui viennent en général de l'URL (ou arguments, ex d'utilisation typique: réduire une vue à un seul noeud, ou 1 user, ou des noeuds tagués d'un terme...).
But: créer une vue qui ne prend que les users qui ont au moins créé un billet de blog, leur attribue une page perso, crées dynamiquement (sans filtre sur un nom de user)
Conf de path_auto
pour les noeuds blog, définir le pattern (admin/config/search/path/patterns) à blog/[user]/[title]
Note: il y une partie "content path" (avec Default path pattern for Billet de blog (applies to all Billet de blog content types with blank patterns below) que j'ai mis à blog/[node:author]/[node:title]
et plus bas une partie "blog path" avec Pattern for blog page paths qui était à blogs/[user:name] et que j'ai modifié en blog/[user:name]
Création de la vue
Créer une nouvelle vue (admin/structure/views/add), avec cette page principale et un bloc:
Page |
Bloc | ||
---|---|---|---|
titre | Blogs | ||
format | Show Content Teaser | ||
filtre | publié, de type Blog | ||
tri | date pub, desc | ||
page settings |
chemin blog Menu: Entrée normale du principal |
||
Relation | auteur pour retrouver ce champs ci-dessous: | ||
contextual filters |
User: Name –filter value is NOT in the URL = Show “Display all results for the specified field” –Override Title = Blogs by %1 –Specify validation settings = Basic Valid, Display contents of “No results found” –More Section: –Case = Capitalize each word –Case in path = lowercase –Transform spaces to dashes in the URL = Yes |
supplanter User: Name si non présent: display summary ordre tri: asc |
Afficher le bloc
Pour le block, il ne doit apparaitre que pour les pages en blog/* (et blog)
Sans mise en forme: un titre indésirable et les puces sont moches... Le nom de billet posté apparait entre ()
Modifier la vue de ce bloc en cliquant sur le champs Contenu: Titre (supplanter dans la liste en haut) et dans "Paramètres d'affichage": cocher
Exporter
Les fausses manip' sont si faciles dans View... En PJ, 2 exemples de views exportées.
Autres conf dispo dans Configuration d'un filtre contextuel
Plus
Titre pour l'adminsitration
Mode glossaire
applique une limite au nombre de caractères utilisés dans la valeur du filtre, ce qui permet à la vue résumée de se comporter comme un glossaire.
Casse (minuscule, maj...): Lors de l'affichage du titre et du résumé, comment transformer la casse de la valeur du filtre.
Casse dans les chemins: Lors de l'affichage des chemins URL, comment transformer la casse de la valeur du filtre. À n'utiliser qu'avec Postgres, qui utilise des comparaisons sensibles à la casse.
Avec en plus:
- Transformer les espaces en tirets dans les URL
- Autoriser plusieurs valeurs : Si sélectionné, les utilisateurs peuvent saisir plusieurs valeurs sous la forme 1+2+3 (pour OR) ou 1,2,3 (pour AND).
copies d'écran
puis plus bas:
meme fenetre (bas):
Supplanter pour le bloc:
Note "Chemin de base": l'aide affiche:
Définir le chemin de base pour les liens dans cette vue récapitulative, i.e. http://ex.com/chemin_de_votre_vue/archive. Ne pas mettre de slash (/) avant et après. Si cette valeur est vide, Views utilisera le premier chemin trouvé comme chemin de base dans les affichages de page, ou / si aucun chemin n'est trouvé.
Plus bas:
X Afficher le décompte d'enregistrements avec lien
Supplanter le nombre d'éléments à afficher
o Afficher le contenu de "Aucun résultat trouvé"
o Afficher "Accès refusé"
Definitive Guide to Drupal 7
Attachment | Size |
---|---|
ex_filtre_contxt.txt | 9.74 KB |
ex_relation2.txt | 11.87 KB |