it-swarm-es.com

Convertir nombres de término con caracteres especiales a ID de término en vistas

Tengo una vista en la que quiero usar múltiples termID como argumentos. Quiero usar un nombre de término de la url y convertirlo en un termID. Me las arreglé para hacer esto con bastante facilidad y funciona con términos simples de 1 palabra o incluso varias palabras marcando 'Transformar guiones en URL a espacios en argumentos de nombre de término'

Tengo algunos términos que tienen caracteres especiales, por ejemplo: "noticias y política".

¿Hay alguna manera de tener URL de Niza (noticias-política) y obtener puntos de vista para reconocer el término correcto y convertirlo al ID de término correcto? ¿Tendré que codificar el ampersand? ¿Eso funcionará?

Editar: puede configurar alias de ruta para términos de taxonomía única, pero es un problema cuando desea utilizar el nombre del término como un segundo argumento en una ruta con múltiples argumentos, por ejemplo:

Digamos que quería filtrar los resultados de la vista por% 1 término de Noticias y luego% 2 Noticias y Política

/ noticias/noticias-política

segundo término no sería reconocido.

11
nickwshaw

Puede usar pathauto para configurar alias automáticos para sus términos de taxonomía. Pathauto se encargará de los caracteres de URL no válidos cuando cree los alias automáticos. Luego, en su opinión, utilice el término id como argumento. La ruta de su vista puede ser taxonomía/término /% o las autoalias que configuró /%

2
Jepedo

Debido a un error de larga data en el módulo de Vistas reportado en Problema # 672606: Signos más, guiones y barras diagonales (+ - /) romper argumentos en Drupal.org, no es posible usar como argumentos (o "filtros contextuales" en el lenguaje más reciente) nombres de términos que contienen ciertos caracteres especiales. Un par de soluciones se proponen allí :

  1. Use algo como el módulo campo calculado (campo_calculado) para crear un valor de campo compatible con URL en el término entidad que puede usarse como argumento Solo tenga en cuenta la posibilidad (¿delgada?) De términos muy similares que se castigan entre sí si no tiene cuidado con la singularidad.
  2. Simplemente use ID de término para los argumentos y cree alias de ruta para ellos usando el módulo View Alias (view_alias).
2
TravisCarden