Nombre de taxonomía de filtros contextuales de vistas


106

Estoy agregando un filtro contextual a una vista para un tipo de contenido personalizado que tiene un campo de taxonomía. El filtro contextual me permite filtrar por la identificación de la etiqueta de taxonomía pero no por el nombre de la etiqueta de taxonomía. Significado con las etiquetas dadas en la taxonomía:

1  | test1
2  | another tag
3  | taggy
......
99 | coolness

Puedo generar un filtro contextual que analizará una URL como http://mydrupal/myview/3para mostrar todo el contenido que se ha etiquetado taggyPERO, la URL debe pasar el argumento para buscar por nombre de etiqueta en lugar de identificación de etiqueta , por ejemplo, http://mydrupal/myview/taggypara ver todo el contenido etiquetado con taggy¿Cómo puede esto se logra?

Respuestas:


156

Supongo que ha agregado el Content: Has taxonomy term IDfiltro contextual. Puede usar nombres de términos de taxonomía con este filtro ajustando la Specify validation criteriaconfiguración. Aquí hay una captura de pantalla:

Captura de pantalla

Asegúrate de que Specify validation criteriaesté marcado y que se te presenten más opciones. Debajo de Validatorelegir Taxonomy term. Opcionalmente, puede seleccionar con vocabularios para permitir. En Filter value typeelegir Term name converted to Term IDy marque la Transform dashes in URL to spaces in term name filter valuescasilla de verificación.


66
con toda honestidad, esto no es muy intuitivo para los términos de taxonomía. Esta respuesta me ayudó a resolver un problema de una semana. :)
PhiloSurfer

¡brillante! Muchas gracias por la solución detallada. Nunca lo habría descubierto por mi cuenta.
Uwe

1
Esta fue una gran ayuda. Gracias. Sin embargo, parece que si está pasando varios términos de taxonomía separados por signos +, no funciona. O mejor dicho, creo que está usando Y y en lugar de un Or.

2
Vale la pena señalar: si ha intentado pasar una ID de término a través de un argumento de contexto del Panel de vista de paneles y luego intenta esto, tener el argumento de contexto establecido hará que el filtro contextual no proporcione el valor predeterminado. De nuevo, ese "argumento de contexto", que es diferente del "filtro contextual" y su valor predeterminado. Estuve bastante confundido por unos minutos ...!
aendrew el

@rocketeerbkw ¡Tienes la sintaxis AND / OR al revés! Tiene un poco de sentido como lo has escrito, pero no está bien.
doublejosh

6

Otra forma de pelar al gato:

Necesitaba que la consulta de nombre de término de taxonomía real no se convirtiera en ID de término.

Aquí se explica cómo consultar el nombre del término de taxonomía que se pasó como filtro contextual:

Para obtener el nombre, debe agregar una relación, ya sea en el campo o en la relación genérica de taxonomía. Luego puede agregar cualquier campo para ese término como filtro contextual, incluido el nombre.

https://www.drupal.org/node/1156022#comment-4469378


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.