Saltar navegación

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.

Este tema contiene 7 respuestas, tiene 2 voces.

Última actualización por Alejandro hace 1 año, 11 meses.

Asistido por: Alejandro.

Autor Entradas
marzo 7, 2023 en 12:03 pm #13189021

jordi

Tengo un WordPress con WPML y configurado para que el idioma base sea /es/ y luego tengo el catalán aquí /ca/
El problema es que, si el usuario entra con un enlace sin idioma, por ejemplo: enlace oculto no redirige a enlace oculto que sería lo más interesante para que no hubiese contenido duplicado. Y más viendo que la conónica no funciona. Y así con todas las urls.
¿Como podríamos solucionarlo?

marzo 8, 2023 en 12:50 pm #13199077

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+01:00)

Hola!

Esto que te sucede es esperado ya que para tener esta configuración como la que deseas, tienes que configurar una "root page". puedes tratar de usar esto como ayuda: https://wpml.org/documentation/getting-started-guide/language-setup/directory-default-language/#redirect-the-root-domain-to-the-default-language-directory

Pero si eso no funciona, tendrás que usar código personalizado para hacer lo que deseas, ya que de por sí el comportamiento es el mismo de cuando un usuario escribe un URL equivocado, por lo que no tienes control total de ello a menos que no hagas reglas específicas para algunas situaciones.

Saludos.

marzo 8, 2023 en 2:26 pm #13199567

jordi

Hola Alejandro,
La verdad es que no es el comportamiento que espero ya que tengo configurado un directorio para el idioma original (/es/). Por lo que un enlace sin idioma no debería existir.
La redirección si pones solo el domino enlace oculto , lo hace correcto hacia enlace oculto. Pero no con páginas interiores.
He hecho de todas formas lo que me recomiendas del rootpage, pero no funciona.

Estoy de acuerdo que puede que no podemas controlar esta redirección, pero al menos debería salir un 404 al poner la página sin el idioma, ya que en principio no debería existir, siendo válida solo la página con idioma en el enlace.
Es que sinó tenemos un problema grave de contenido duplicado para el SEO y esto no puede ser.
¿Como podria mos solucionarlo?

marzo 8, 2023 en 3:35 pm #13200287

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+01:00)

Entiendo que no es el comportamiento que esperas tu, pero técnicamente lo que esperas tu no tiene sentido (WordPress SIEMPRE necesita una "root page" y esa es "sitio.com", por lo que "sitio.com/es" semanticamente es un directorio y por ende NO puede ser una root. es así como funciona internet y WordPress, por lo que WPML tiene que atenerse a ese comportamiento)

Y si, por eso he mencionado que en tu caso, para redireccionar como lo deseas, tienes que usar código personalizado, que no está soportado en nuestro soporte ya que el uso que le estás dando a tu sitio no es el uso para el que se creó esta función (imaginate los sitios que inicialmente tienen una página que dice "elige tu idioma" en la homepage y luego te manda a las páginas con en el idioma deseado, ese es un ejemplo del funcionamiento standard, por ejemplo).

Si deseas seguir por ese camino, te recomiendo que contactes un contractor, que puede que te logre ayudar con eso: https://wpml.org/contractors/

Puedes también tratar de usar hooks que ofrecemos para tratar de crear lo que deseas: https://wpml.org/documentation/support/wpml-coding-api/wpml-hooks-reference/

Saludos.

marzo 8, 2023 en 4:29 pm #13200657

jordi

Creo que no me has entendido (o yo no me he explicado bien). No tengo el wordpress en un directorio, sinó que uso vuestra configuración para dar este directorio al idioma base. Adjunto imagen para que lo entiendas mejor.

Así que el idioma español sale en el directorio /es/ y el otro en /ca/.

Luego lo que digo que no tiene sentido es salga la misma página en enlaces con /es/ que sin el /es/ en el enlace como te comentaba en el post inicial:

enlace oculto
enlace oculto

Yo te decía que lo óptimo seria hacer la redirección, pero si no es posible porque el plugin no lo permite, entonces te pronoia que salga un error 404.
Lo que no puede ser es que el plugin te muestre el mismo contenido en dos urls diferentes.

¿Se entiendo mejor ahora? Que podria mos hacer?

screenshot20230308172422.png
marzo 8, 2023 en 5:08 pm #13200901

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+01:00)

Claro que te entiendo y te he entendido desde tu primera respuesta, pero evidentemente no he logrado hacerme entender.

Revisa este link: https://wpml.org/es/documentation-2/guia-de-inicio/configuracion-del-idioma/directorio-de-idioma-para-el-idioma-por-defecto/ (el que te mandé anteriormente, pero esta es la versión española).

Al inicio de ese documento se lee:

WPML permite crear una página raíz específica para su sitio. Esto significa que, independientemente de los idiomas disponibles en su sitio, la página de inicio va a ser la misma para todos los visitantes.

y luego se menciona lo siguiente:

Debe tener en cuenta que cuando se selecciona Utilizar el directorio para la opción del idioma predeterminado en la página WPML → Idiomas, se debe utilizar una página raíz.

en tu imagen tu NO tienes una página raíz configurada, es decir que esa opción NO está bien configurada y por ende es por eso que WordPress trata de adivinar cuál es la página correcta y te muestra luego la del /es (ya que para WordPress la homepage VERDADERA es sitio.com, no sitio.com/es).

No te recomiendo que hagas que sitio.com lleve a 404 porque los crawlers van a creer que tienes páginas rotas y si es en lo que ellos piensan sea la homepage, entonces es de verdad malo para el SEO, pero en dado caso las 2 opciones que tu deseas se pueden lograr solo con código personalizado, que nosotros no podemos soportar.

-----------------------------
El problema principal, y es lo que he tratado de explicar es como tu estás usando esa opción VS el "objetivo" de esa opción, la razón de existir de esa opción de WPML, que se explica en la guía que linkee arriba.

1) Tu la usas porque quieres que siempre aparezca el idioma en el link sin importar si hay o no una raíz.

2) La función existe para " crear una página raíz específica para su sitio" como bien lo dice la guía que te he envíado.

-----------------

Por si todavía no logro hacerme entender:

- El sitio.com y sitio.com/es muestran lo mismo porque actualmente no has configurado un sitio raíz (y el código que se había recomendado lo que hace es que usa una página en blanco usada como sitio de raíz que hace una redirección a /es)

- Esa opción que has activado NECESITA una página raíz. es obligatoria.

- No hay modo "default" para ostrar o una 404 o que haga una redirección a un link diferente sin que se haga un código personalizado para ello, que no está cubierto en nuestro soporte.

Saludos.

marzo 8, 2023 en 5:53 pm #13201335

jordi

Creo que no nos entendemos de veras. Tambien pediría que bajaras el tono, por favor.
Mira la imagen otra vez, la opción de página raíz está activada, tal y como me dices. Está igual a la foto del enlace de tu primera respuesta.

Te vuelvo a repetir que la redirección de la home la hace bien y no quiero poner un 404 en la raiz del domino (por favor...). Así que olvida esto que no te he pedido en ningún momento. Olvida la redirección de la home o página raíz.

Yo hago referencia a las páginas interiores, como te voy diciendo.
Ejemplo:

enlace oculto
enlace oculto

El comportamiento que yo esperaria del plugin es:
La primera debería redirigir a la segunda. Si no es posible que sea un 404. Si no és posible, como mínimo que la canónica (estoy usando el addon de Yoas SEO de WPML) este correcta en la primera, es decir que sea igual a la segunda url.

Es posible conseguir este comportamiento con vuestro plugin o no?

marzo 9, 2023 en 12:30 pm #13206703

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+01:00)

Me disculpo si parece que tengo un tono que no te gusta, porque de verdad no he escrto nada en ningún tono específico, quiero ayudarte a entender lo que mencionas y por qué no se puede hacer, es solo esto :).

1) Lo del 404 lo respondí por esta frase que tu has escrito:

pero al menos debería salir un 404 al poner la página sin el idioma

2) Lo que mencionas:

La primera debería redirigir a la segunda. Si no es posible que sea un 404. Si no és posible, como mínimo que la canónica (estoy usando el addon de Yoas SEO de WPML) este correcta en la primera, es decir que sea igual a la segunda url.

En pocas palabras: No, no es posible.

Lo que tu deseas hacer, es algo que se sale de la razón de existencia de esa funcionalidad (y es lo que traté de explicarte en mis respuestas anteriores). He hecho este video donde te explico con un inpu visual todo el proceso, la razón por la cuál actualmente tu sitio tiene un cierto comportamiento y como arreglarlo: enlace oculto

Este video también lo he hecho porque esta opción puede ser difícil de entender y configurar si se cree que hace una cosa que en realidad puede que sea "parte" de su funcionalidad pero que no es la funcionalidad principal.

Velo por favor y luego avísame si es que todavía crees que no te entiendo, y de ser así, entonces puedes grabarte como lo hice yo para poder entonces ver si así logro entender mejor el caso.