SOLUCIÓN – Redirección tras eliminar idiomas en Prestashop 1.7

SOLUCIÓN - Redirección tras eliminar idiomas en Prestashop 1.7

Un problema grave para el SEO de la tienda online es comenzar el desarrollo con multi-idiomas que dan lugar a que las URL de cada idioma lleven en su contenido es/, en/, ca/ y después eliminar los idiomas y dejar solo el español. Hacer este cambio da lugar a que desaparezca de las URL´s el es/, en/, ca/ lo que supone que todas las url´s indexadas ya por Google lancen un error 404 cuando un usuario hace una búsqueda en Google y pincha en nuestro enlace.

Para evitar que tu tienda online arroje errores 404 de forma masiva en el SEO y que puedas mantener todas tus url´s intactas, debes realizar una redirección en tu archivo .htaccess que encontrarás en la carpeta raiz de tu tienda de la siguiente forma:

Dirigete a esta sección del contenido .htaccess

#Domain: tudominio.com
RewriteRule . – [E=REWRITEBASE:/]
RewriteRule ^api(?:/(.*))?$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L

Y añade la función de redirecciones de idiomas. En este ejemplo lo hemos hecho con el lenguaje español, inglés y catalán:

#Domain: tudominio.com
RewriteRule . – [E=REWRITEBASE:/]
RewriteRule ^api(?:/(.*))?$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L
RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /es/[^\ ]+
RewriteRule ^es/(.*)$ /$1 [L,R=301]
RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /en/[^\ ]+
RewriteRule ^en/(.*)$ /$1 [L,R=301]
RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /ca/[^\ ]+
RewriteRule ^ca/(.*)$ /$1 [L,R=301]

La función de redirección la hacemos con estas dos lineas:

RewriteCond %{THE_REQUEST} ^(GET|HEAD)\ /en/[^\ ]+
RewriteRule ^en/(.*)$ /$1 [L,R=301]

Si tu idioma es otro distinto sustituye el “en” por el prefijo de tu idioma.

Tu SEO no sufrirá puntuación negativa y habrás solucionado un problema importante de tu tienda Prestashop.


Abrir chat