J'ajoute un filtre contextuel à une vue pour un type de contenu personnalisé qui possède un champ de taxonomie. Le filtre contextuel me permet de filtrer par l'ID de la balise de taxonomie mais pas par le nom de la balise de taxonomie. Signification avec les balises données dans la taxonomie:
1 | test1
2 | another tag
3 | taggy
......
99 | coolness
Je peux générer un filtre contextuel qui analysera une URL comme http://mydrupal/myview/3
pour afficher tout le contenu balisé avec taggy
MAIS, l'URL doit passer l'argument pour rechercher par balise nom au lieu de balise id, par exemple, http://mydrupal/myview/taggy
pour afficher tout le contenu balisé avec taggy
Comment procéder?
Je suppose que vous avez ajouté le Content: Has taxonomy term ID
filtre contextuel. Vous pouvez utiliser des noms de termes de taxonomie avec ce filtre en ajustant Specify validation criteria
réglages. voici une capture d'écran:
Assure-toi Specify validation criteria
est coché et vous devriez avoir plus d'options. Sous Validator
choisissez Taxonomy term
. Vous pouvez éventuellement sélectionner avec des vocabulaires à autoriser. En dessous de Filter value type
choisissez Term name converted to Term ID
et vérifiez le Transform dashes in URL to spaces in term name filter values
case à cocher.
Une autre façon de dépouiller le chat:
J'avais besoin que la requête de nom de terme de taxonomie réelle ne soit pas convertie en ID de terme.
Voici comment interroger le nom du terme de taxonomie passé en tant que filtre contextuel:
Pour obtenir le nom, vous devez ajouter une relation, soit sur le terrain, soit sur la relation de taxonomie générique. Vous pouvez ensuite ajouter tous les champs de ce terme en tant que filtre contextuel, y compris le nom.