Hola.
Por lo que cuentas, parece que el problema está en la codificación de caracteres de la base de datos y cómo WordPress está interpretando esa información tras la actualización.
Aquí te dejo algunas cosas que puedes probar para intentar corregirlo:
1. Volver a la configuración original de wp-config.php:
Lo primero sería deshacer el cambio que hiciste y dejar la línea como estaba originalmente:
define('DB_CHARSET', '');
A veces, WordPress intenta autodetectar la codificación si no se especifica.
2. Asegurarte de la codificación de la base de datos:
Verifica que la base de datos en sí esté configurada para usar UTF-8. Puedes hacer esto de varias maneras, dependiendo de tu proveedor de alojamiento y las herramientas que te ofrezcan:
- phpMyAdmin: Si tienes acceso a phpMyAdmin, selecciona tu base de datos y luego ve a la pestaña «Operaciones». Busca la sección «Cotejamiento» o «Collation». Asegúrate de que esté configurado a algo como
utf8_general_ci o utf8mb4_unicode_ci. Si no lo está, puedes intentar cambiarlo (ten cuidado y haz una copia de seguridad antes).
- Panel de control del alojamiento: Algunos paneles de control ofrecen herramientas para gestionar bases de datos donde puedes verificar o modificar el cotejamiento.
- Consultar con tu proveedor de alojamiento: Si no estás seguro de cómo verificar o cambiar la codificación de la base de datos, lo mejor es contactar con el soporte técnico de tu proveedor de hosting. Ellos podrán ayudarte directamente.
3. Revisar el cotejamiento de las tablas y columnas:
Una vez que te asegures de que la base de datos tiene la codificación UTF-8, es importante verificar que las tablas individuales y sus columnas también la estén utilizando. En phpMyAdmin, puedes seleccionar cada tabla y luego ir a la pestaña «Operaciones» para verificar o cambiar su «Cotejamiento». También puedes revisar la estructura de cada tabla para ver el cotejamiento de cada columna.
Si encuentras tablas o columnas con una codificación diferente (como latin1), podrías intentar cambiarlas a un cotejamiento UTF-8. ¡Recuerda hacer una copia de seguridad completa de tu base de datos antes de realizar cualquier cambio!
4. Intentar forzar la codificación UTF-8 en WordPress:
Si los pasos anteriores no funcionan, puedes intentar añadir la siguiente línea a tu archivo wp-config.php (después de la línea <?php):
define('DB_COLLATE', 'utf8_general_ci');
Esto le indica explícitamente a WordPress que utilice el cotejamiento utf8_general_ci.
5. Limpiar la caché:
Después de realizar cualquier cambio, asegúrate de limpiar la caché de tu navegador y cualquier plugin de caché que estés utilizando en tu sitio de WordPress.
En resumen, te recomendaría seguir estos pasos en orden:
- Antes que nada, haz uan copia de seguridad del sitio.
- Revierte el cambio en
wp-config.php a define('DB_CHARSET', '');.
- Verifica y, si es necesario, cambia la codificación de tu base de datos a UTF-8 (idealmente
utf8mb4_unicode_ci).
- Revisa y, si es necesario, cambia el cotejamiento de tus tablas y columnas a un cotejamiento UTF-8.
- Intenta añadir
define('DB_COLLATE', 'utf8_general_ci'); a wp-config.php.
- Limpia todas las cachés.
Espero que alguno de estos pasos te ayude a resolver el problema.
Saludos.