Saltar al contenido Saltar a la barra lateral

Este es el foro de soporte técnico de WPML, el plugin multilingüe de WordPress.

Todas las personas pueden leerlo pero solo los clientes de WPML pueden ingresar comentarios. El equipo de WPML responde en los foros 6 días a la semana, 22 horas por día.

Sun Mon Tue Wed Thu Fri Sat
- 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 -
- 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 -

Zona horaria del soporte: America/Argentina/Buenos_Aires (GMT-03:00)

Etiquetado: 

Este tema contiene 5 respuestas, tiene 0 voces.

Última actualización por Otto hace 1 año, 5 meses.

Asistido por: Otto.

Autor Publicaciones
Abril 3, 2025 a las 15:22 #16893513

Externa

Antecedentes del problema:
Estoy desarrollando un sitio y quiero que los productos traducidos mantengan la misma estructura de categorías que los productos originales en español. Actualmente, los productos en español tienen una categoría padre específica, pero las traducciones no están asignando la misma categoría padre, lo que resulta en URLs diferentes. Por ejemplo, un producto en español tiene como categoría padre 'relojes', pero la traducción en inglés ha asignado 'tudor for men' como categoría padre.

Síntomas:
El campo de categoría padre no está disponible en el traductor WPML, lo que resulta en URLs generadas aleatoriamente para los productos en inglés.

Preguntas:
¿Cómo puedo corregir las categorías padre de los productos en inglés para que coincidan con las de los productos en español?
¿Cómo puedo realizar redirecciones 301 de las URLs actuales a las nuevas corregidas?

Abril 3, 2025 a las 16:17 #16894034

Otto

Hola,

Prueba lo siguiente:
❌ Por favor, antes que nada: haz un backup de tu sitio ❌
- Ve a WPML > Taxnonomy Translation
- Selecciona la cateogoría de producto que necesites
- Haz click en la pestaña "Hiearchy Syncronization"
- Si ves los cambios sugeridos correctos, haz click en Update Taxonomy Hierarchy
- Finalmente, haz click en Synchronize Product categories assignment in content

Saludos cordiales,
Otto

Si el problema persiste:
Para brindarle un mejor soporte, te agradecería que me enviaras la información de depuración de WPML. Puede seguir esta guía para encontrarlos: https://wpml.org/faq/provide-debug-information-faster-support/

Abril 3, 2025 a las 16:40 #16894246

Externa

Hola Otto,

Gracias por su respuesta

Las categorias estan traducidas correctamente, el problema es otro

la categoria por defecto en español, no la hereda la traduccion y esta generando una url resultante de combinar otra categoria por defecto

en español tienes algo como /tienda/relojes/tudor/nombre-del-producto y en inglés, como no se elige el parent category genera algo como
/en/shop/watches/tudor/tudor-for-men/name-of-product

Gracias

Abril 3, 2025 a las 16:44 #16894257

Otto

Hola,

Eso es lo que debería corregir los pasos que te envié. Los has probado y no solucionan el problema?

Saludos cordiales,
Otto

Abril 3, 2025 a las 16:48 #16894278

Externa

Hola Otto,

No eso no corrige el problema.

Lo había obviado porque las categorías de producto estan traducidas y sincronizadas

Después de hacerlo sigue igual:

Te paso un ejemplo:

Español:
enlace oculto

Inglés:
enlace oculto

Gracias

Abril 3, 2025 a las 17:11 #16894354

Externa

Loque me refiero es que esta opcion disponible en wordpress, no está disponible en el editor de traduccion

Entiendo que es un valor que se debería de copiar del idioma original y no habría que traducir, pero no está disponible.

Ahora tengo 900 urls mal que debo corregir y hacer un 301 y no se como proceder

Gracias

Captura de pantalla 2025-04-03 a las 19.09.29.jpg
Abril 3, 2025 a las 17:35 #16894419

Otto

Hola,

Es como dices, la relación padre/hijo entre las categorías no se traduce sino que se respeta entre original y traducciones. Y si hay errores los pasos que te mencionaba los debería corregir.

Para investigar mejor el problema, ¿puedes proporcionarme acceso temporal a tu sitio (wp-admin y FTP)?
**Importante:**
- **Haz un backup** de tu sitio antes de compartir los datos.
- Si no ves un formulario privado para ingresar las credenciales, **no las publiques** en el foro.

Si es necesario, podría replicar tu sitio localmente instalando un plugin (Duplicator, WP All in One Migration, WP Staging o Updraft Plus)? Una vez resuelto el problema, borraré la copia.

Saludos cordiales,
Otto

Abril 3, 2025 a las 18:30 #16894605

Otto

Hola,

La categoría Relojes Tudor y su traucción Tudor Watches tienen el mismo slug:

tudor

Podrías editarlo para que sea diferente en cada idioma. Lo he probado localmente y parece funcionar, podrías mirarlo?
❌ Por favor, antes que nada: haz un backup de tu sitio ❌

Saludos cordiales,
Otto

Abril 3, 2025 a las 21:41 #16894853

Externa

Buenas de nuevo Otto

Lo que quiero es que todo tenga el mismo slug salvo que sea traducible

/tienda/relojes/tudor/
/en/shop/watches/tudor

Eso es posible?

Sin embargo si la categoria es Relojes de hombre, querría traducirlo
/tienda/relojes/relojes-hombre
/en/shop/watches/men-watches

precisamente no quiero cambiar el nombre.

Gracias!

Abril 4, 2025 a las 14:07 #16897940

Otto

Hola,

En principio no es posible.

WP no permite que las taxonomías tengan el mismo slug, este debe ser único. Y para traducir, WPML crea categorías por idioma y las conecta.

Una opción que podría funcionar es:
- En WPML -> Settings -> Taxonomies Translation
- Marcar la taxonomía como "Display as translated"
- Y NO traducir la categoría

No se como funcionará esto con el tema de las jerarquías.

Puedes probarlo, pero no me extrañaría que no funcione.

El escenario que planteas no es una funcionalidad estándar de WPML.

Saludos cordiales,
Otto

Abril 4, 2025 a las 14:43 #16898093

Externa

Hola Otto

Podrias mandarme una captura del setting que debo hacer?y después eliminar la traduccion o no traducir?

Ahora mismo está puesto el mismo nombre en los dos idiomas en muchas categorias.
Se llama igual en los dos idiomas y es lo más adecuado
Te pongo un ejemplo:
enlace oculto

Estas categorias es que se llaman igual en español que ingles ya que son el nombre de la marca o la coleccion

por ejemplo;

/shop/watches/longines/
/tienda/relojes/longines/

En este caso no es posible traducir sin cambiar el sentido a todo

¿que me recomiendas?

Mil gracias

Abril 4, 2025 a las 18:05 #16898716

Otto

Hola,

Por lo que puedo ver la configuración de la categoría de producto ya está como "Traducible", esto quiere decir que si no hay traducción mostrará la original.

Luego deberías eleminar la traducción de las categorías cuyo slug no quieras modificar. Desde luego, este te impedirá traducir otras partes de la categoría, pero no se si esto es un problema.

Como te decía no estoy seguro de que esto funcione, es un "hack" no es una funcionalidad de WPML.

Sinceramente, creo que lo que menos dolores de cabeza te dará es usar:
/shop/watches/longines-watches/
/tienda/relojes/relojes-longines/

Entiendo que no es lo mejor, pero así va a funcionar correctamente.

Saludos cordiales,
Otto

Abril 4, 2025 a las 23:27 #16899176

Externa

Buenas de nuevo Otto

Según entiendo si la categoria principal es una que si tiene una traduccion diferente no pasaría el problema de que añada otra categoría

Había pensado que ya que relojes y watches es diferente, si son la categoria padre quedaría correctamente la url del producto

Este producto tiene como parent breitling que es el mismo nombre en los dos idiomas
enlace oculto
y la version en ingles:
enlace oculto

Sin embargo, este producto tiene relojes como categoria principal y aun así se muestra una subcategoria en la url:
enlace oculto

En inglés:
enlace oculto

La pregunta es si cambio que todas las marcas tengan como categoria principal relojes, podré hacer que todas las urls sean /watches/-product-name?

Gracias
Saludos!!

Abril 7, 2025 a las 13:01 #16904557

Otto

Hola,

Como te comentaba, lo "estándar" es que los slugs sean diferentes. Fuera de eso, puede funcionar pero no hay garantías.

La configuración predeterminada de “Enlaces permanentes de producto” de WooCommerce (es decir, “Base de la tienda con categoría”, /shop/category/product) incluirá todas las categorías de producto en la URL si un producto tiene subcategorías.

Si dejas como categoría principal watches para todos los productos, creo que también deberías modificar la jerarquía para que no esten incluidas en la URL, si es eso lo que prefieres.

Saludos cordiales,
Otto

Abril 7, 2025 a las 18:01 #16905612

Externa

Hola de nuevo Otto

Gracias por tu respuesta

La verdad es que no me aclaro muy bien que es lo que tengo que hacer para solucionar este problema

entiendo por tu mensaje que lo que debo hacer es poner otro nombre en ingles a todas las categorias, y una vez tengan el nombre diferente en inglés, dejarán de aparecer en la url?

Puedo probar con algun producto categoria y ver si cambia la url

Además de cambiar el nbombre en inglés hay que hacer algo para ue se genere la URL de nuevo?

Y según tu experiencia, como debería llamar la versión en inglés en este supuesto?

/tienda/relojes/tudor/black-bay
/en/shop/watches/tudor/black-bay

Gracias

El tema '[Cerrado] Asignar misma categoria padre en productos traducidos que en version original' está cerrado a nuevas respuestas.