Corrige el destino de un selector de idioma

El selector resuelve la ruta actual hasta su base y reconstruye la URL equivalente para cada idioma. Un enlace incorrecto suele apuntar a datos de slug erróneos, a una ruta personalizada no resuelta o a un marcado en caché obsoleto.

Compara las rutas

  1. Anota la URL base actual y las URLs de destino.
  2. Comprueba el prefijo de idioma y la política del prefijo del idioma base.
  3. Para una entrada o un término, verifica cada padre localizado y el slug actual.
  4. Para una URL interna personalizada, verifica su asignación de destino registrada.
  5. Confirma que se conservan las cadenas de consulta, los fragmentos, la paginación y los valores de los endpoints de WooCommerce.
  6. Limpia las cachés de menús, páginas, objetos y CDN.

Prueba directamente el enlace generado. Si devuelve un 404, resuelve primero el enrutamiento en lugar de editar el marcado del selector.

Identifica destinos no compatibles

Las URLs externas se dejan sin cambios intencionadamente. Las rutas exclusivas del navegador y los endpoints de terceros pueden requerir una URL personalizada mantenida o una integración de enrutamiento. Un selector no puede inventar la página equivalente en un servicio externo.

Si el código personalizado filtra pom_translate_language_switcher_html, desactiva ese callback y compara el resultado predeterminado. Reconstruir los enlaces en el filtro final del HTML puede descartar la jerarquía localizada y las exclusiones calculadas por POM Translate.

El selector corregido debe producir una ruta equivalente estable por cada idioma disponible, conservar los componentes de la URL y marcar con precisión el idioma actual.