Resumen
A) Desactivar y desinstalar El plugin qTranslate X
B) Instalar otro plugin para realizar las traducciones, en este caso utilizaremos el plugin WPML. Si bien este plugin es de pago, el funcionamiento, el soporte y la comunidad que hay detrás lo merece. Siendo el mejor plugin de traducciones para WordPress hasta la fecha.
Resumen:
Comencemos
Si queremos desinstalar el plugin qTranslate X no nos va a resultar fácil, no penséis que va a ser como la mayoría de los plugins que basta con desactivarlos y desinstalarlos. Este plugin deja multitud de rastros de código al desinstalarse y etiquetas ocultas que utilizaba cuando estaba funcionando.
Como por ejemplo, aparecen etiquetas en los títulos de las páginas correspondientes a los distintos idiomas que estaban en la web. “[:es]Empresa [:en]Company[:]”.
Dicho esto, ¿cómo podemos solucionarlo y quitarnos de en medio toda esa basura que nos deja el plugin al desinstalarlo?
Cómo desinstalar completamente el plugin qTranslate X
Primero y antes de liarla, lo recomendable es realizar un backup de nuestra página web. Lo puedes hacer realizando una copia de los datos por FTP y extrayendo una copia de la base de datos de phpMyAdmin o bien puedes utilizar algún tipo de automatismo en forma de plugin como “Duplicator” o similares.
Hay que borrar manualmente el contenido en inglés de todas las páginas y entradas.
Eliminar las tags o etiquetas de los widgets editándolos desde el backend.
Hay que introducir unas consultas de SQL en la base de datos. Para ello hay que entrar en phpMyAdmin, seleccionar la base de datos que corresponda con el WordPress que contenga la traducción que quieres eliminar y hacer click en la pestaña “SQL”. Una vez dentro del recuadro, copiar el código (script) y darle al botón continuar de la parte inferior derecha de la casilla donde acabas de copiar el código.
Cada consulta SQL se tiene que ejecutar por separado.Recomendamos desactivar el plugin de qTranslate X para que no siga añadiendo código a nuestras páginas y entradas y no realizar cambios en nuestro WordPress cuando estemos ejecutando los códigos de SQL, más que nada por seguridad.
Estos son los scripts que debes añadir en la pestaña de “SQL” que mencionábamos más arriba.
- Elimina el contenido en otros idiomas que vaya después del contenido “es” en la tabla “wp_posts”:
UPDATE wp_posts SET post_content = case when
LOCATE('[:es]', post_content) > 0
then
SUBSTRING(
post_content
FROM 1
FOR LOCATE(
'[:',
post_content,
LOCATE('[:es]', post_content) + 5
) - 1
)
else
post_content
end;
- Elimina el contenido en otros idiomas antes del contenido “en” en la tabla “wp_posts”, incluida la etiqueta de idioma para el contenido “es”:
UPDATE wp_posts SET post_content = case when
LOCATE('[:es]', post_content) > 0
then
SUBSTRING(
post_content
FROM LOCATE(
'[:es]',
post_content
) + 5
)
else
post_content
end;
- Elimina del título de las páginas la etiqueta “es” en la tabla “wp_posts”:
UPDATE wp_posts SET post_title = case when
LOCATE('[:es]', post_title) > 0
then
SUBSTRING(
post_title
FROM 1
FOR LOCATE(
'[:',
post_title,
LOCATE('[:es]', post_title) + 5
) - 1
)
else
post_title
end;
- Elimina del título de las páginas la etiqueta “es” en la tabla “wp_posts”, incluida la etiqueta de idioma para el título “es”:
UPDATE wp_posts SET post_title = case when
LOCATE('[:es]', post_title) > 0
then
SUBSTRING(
post_title
FROM LOCATE(
'[:es]',
post_title
) + 5
)
else
post_title
end;
- Elimina del extracto de las páginas la etiqueta “es” en la tabla “wp_posts”:
UPDATE wp_posts SET post_excerpt = case when
LOCATE('[:es]', post_excerpt) > 0
then
SUBSTRING(
post_excerpt
FROM 1
FOR LOCATE(
'[:',
post_excerpt,
LOCATE('[:es]', post_excerpt) + 5
) - 1
)
else
post_excerpt
end;
- Elimina del extracto de las páginas en otros idiomas la etiqueta “es” en la tabla “wp_posts”, incluida la etiqueta de idioma para el extracto “es”:
UPDATE wp_posts SET post_excerpt = case when
LOCATE('[:es]', post_excerpt) > 0
then
SUBSTRING(
post_excerpt
FROM LOCATE(
'[:es]',
post_excerpt
) + 5
)
else
post_excerpt
end;
Si has llegado a traducir otros elementos de WordPress como menús, metas, temas y plugins, puede que necesites modificar las consultas SQL o eliminar manualmente los idiomas de esos elementos.
Si por un casual, el plugin qTranslate X utiliza para englobar sus etiquetas el símbolo {} en lugar de ser [], te toca modificar las consultas mencionadas más arriba y ejecutarlas otra vez.
Revisa tu página web de tal forma que una vez desactivado el plugin qTranslate X, sólo se vea en un idioma y todo funcione correctamente.
Desde el panel de control de la web, accede a widgets y borra las etiquetas en español de los widgets y guarda para que se salven los cambios en cada widget.
Dentro de “Entradas” y “Categorías”, deberías ver que las categorías tienen un título parecido en estructura a esto: “[:es]Artículos [:en]Blog[:]“. Edita el nombre de las categorías y todos los campos que contengan la basura que se ha dejado el plugin qTranslate. Cuando tengas que editar el contenido, borra todo, salvo la palabra/palabras en español, dejando con ello solo la palabra/palabras en español. Pasaríamos de esto: “[:es]Artículos [:en]Blog[:]” a esto “Artículos“.
Desinstala el plugin cuando tengas todo lo anterior hecho y listo, lo único que tendrías que hacer es otra copia de seguridad al finalizar para quedarte con un backup de la web que está solo en español.
Una vez desinstalado el anterior plugin de idiomas, puedes proceder a instalar el plugin nuevo WPML.