La migración de un sitio web puede traer consigo problemas inesperados, especialmente cuando se trata de caracteres extraños, símbolos Unicode o errores de codificación. Al trasladar un sitio de un servidor a otro, los cambios en la versión de la base de datos pueden causar fallos en la representación de caracteres especiales, emojis e incluso ciertos idiomas.
El plugin Duplicator, una herramienta popular para la migración de sitios WordPress, no tiene la capacidad de reparar o convertir datos automáticamente si el entorno del nuevo servidor no es compatible con la configuración original. Sin embargo, existen varias soluciones para resolver estos problemas de codificación de caracteres.
Cuando aparecen caracteres ilegibles como “�” o “????”, el problema suele estar relacionado con la configuración de la codificación de la base de datos. Aquí algunas opciones para solucionarlo:
wp-config.phpEn muchos casos, WordPress define la codificación de la base de datos en wp-config.php con las siguientes líneas:
define("DB_CHARSET", "utf8mb4");
define("DB_COLLATE", "");
Si aparecen errores, prueba cambiando utf8mb4 por utf8, ya que algunos servidores no manejan bien la codificación más avanzada.
También puedes probar con combinaciones como:
define("DB_CHARSET", "utf8");
define("DB_COLLATE", "utf8_general_ci");
Es importante probar diferentes combinaciones y verificar si los caracteres se muestran correctamente.
Si estás utilizando Duplicator para migrar un sitio, en el Paso 2 del instalador, prueba ajustar las siguientes opciones:
utf8mb4utf8mb4_unicode_ciSi el problema persiste, intenta cambiar utf8mb4 por utf8 en ambas configuraciones.
header.phpAlgunas veces, el servidor no envía correctamente la codificación de caracteres en la cabecera Content-Type, lo que hace que los navegadores intenten adivinar la codificación, generando errores.
Para asegurarte de que la codificación está definida correctamente, revisa el archivo header.php de tu tema y añade la siguiente línea en la sección <head>:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Si notas que la línea ya está presente pero contiene comillas incorrectas o caracteres extraños, corrígelo manualmente.
Si los pasos anteriores no funcionan, es posible que necesites realizar una conversión manual de la base de datos.
database.sql de tu sitio migrado.Esto puede ayudar a corregir problemas de codificación generados durante la migración.
Si el sitio maneja caracteres en diferentes idiomas y hay errores tras la migración, intenta lo siguiente:
wp-config.phpVerifica que las líneas de DB_CHARSET y DB_COLLATE están configuradas correctamente. Si faltan, agrégalas según lo mencionado en la solución A.
En el paso 1 del instalador de Duplicator, hay opciones avanzadas como “MySQL Charset” y “MySQL Collation”. Prueba activarlas para mejorar la compatibilidad.
database.sqlSi la codificación sigue fallando:
database.sql en Notepad++.Algunos problemas con caracteres pueden ocurrir en los nombres de archivos y directorios, lo que impide su correcta transferencia. Esto puede deberse a:
Si después de probar estas soluciones el problema persiste, puede ser necesario trabajar con un desarrollador especializado en migraciones de WordPress. Algunas situaciones complejas pueden requerir scripts de conversión de datos o actualizaciones de servidores.
Duplicator no repara ni convierte datos automáticamente si el nuevo servidor no es compatible con el entorno original. En estos casos, es recomendable consultar a expertos en migraciones de bases de datos.
Los problemas de codificación de caracteres tras una migración con Duplicator pueden resolverse con ajustes en la configuración del sitio y de la base de datos.
wp-config.php para probar diferentes codificaciones.Siguiendo estos pasos, es posible solucionar la mayoría de los errores de codificación tras la migración de un sitio WordPress.
