logo

Extra Block Types (EBT) - Nueva experiencia con Layout Builder❗

Extra Block Types (EBT): tipos de bloques con estilo y personalizables: Presentaciones de diapositivas, Pestañas, Tarjetas, Acordeones y muchos más. Configuraciones integradas para fondo, DOM Box y plugins de JavaScript. Experimenta hoy el futuro de la construcción de diseños.

Módulos de demostración EBT Descargar módulos EBT

❗Extra Paragraph Types (EPT) - Nueva experiencia con Paragraphs

Extra Paragraph Types (EPT): conjunto de módulos basado en párrafos de forma análoga.

Módulos de demostración EPT Descargar módulos EPT

Scroll

Catálogo en D7 con sinónimo del término de taxonomía como argumento

22/02/2025, by Anónimo (no verificado)

Tengo una pregunta: estoy creando un catálogo de productos en Drupal Commerce, como por ejemplo en esta tienda http://czech-cristal.ru. Es decir, he creado un vocabulario de taxonomía "Categorías de productos" con los nombres de los productos necesarios, donde el "Patrón para todas las rutas de Categorías de productos" se forma como catalog/[term:name], y por supuesto, basado en el vocabulario, he creado un menú que hace referencia a Views (ruta catalog/%) pasando el argumento.

Necesito que los enlaces tengan exactamente el formato catalog/[term:name], así como en http://czech-cristal.ru.

Entonces, los problemas con los que me encontré fueron que ingresé los términos de taxonomía, el menú apareció con enlaces catalog/obuv-timberland y catalog/novyy-termin. Hice
Views con la URL catalog/%, establecí un filtro contextual "Contenido: Tiene identificador de término de taxonomía (con profundidad)", en los criterios de verificación elegí código PHP, y en el código escribí lo siguiente:

 

$url = drupal_lookup_path('source', "catalog/".$argument);


if ($url != false)
{
  // si se encuentra la ruta, verificamos que sea una ruta al término de taxonomía
  //
  $term_base_path = 'taxonomy/term/';

  if (strncmp($term_base_path, $url, strlen($term_base_path)) == 0)
  {
    // eliminamos el prefijo 'taxonomy/term/', convertimos el valor restante a número
    // y reemplazamos el argumento de la vista por el ID del término de taxonomía obtenido
    //
    $handler->argument = intval(str_replace($term_base_path, '', $url));
  }
}

return TRUE;

 

Así que en la propia Views todo se muestra correctamente como debería. Muestra los productos necesarios dependiendo del término (captura de pantalla 1). Mi problema es que en el sitio web, en las direcciones catalog/obuv-timberland y catalog/novyy-termin, no se muestra lo que se ve en la vista previa de Views, sino que se muestran materiales asociados con esos términos de taxonomía en orden (captura de pantalla 2). Por favor, indíquenme cómo hacer para que en el propio sitio también se muestren los productos del catálogo como en la vista previa de Views.