Pregunta

Recientemente moví mi sitio basado en WordPress de Dreamhost VPS a un VPS Linode que ejecuta Debian + Lemp. Después de volver a levantar el sitio, noté muchos personajes erróneos en publicaciones; personajes como "y - estaban siendo reemplazados por galimatías.

Después de buscar un poco, parecía claro que el problema era algo relacionado con la codificación de personajes.

Encontré una guía que sugirió editar wp-config.php Y comentando las líneas:

define('DB_CHARSET', 'utf8'); y define('DB_COLLATE', '');

Hice esto y solucionó el problema, pero me pregunto si esa fue la mejor manera de hacerlo. Gracias por cualquier consejo.

¿Fue útil?

Solución

Después de pasar todo el día trabajando en esto, finalmente encontré una guía que funcionó perfectamente:

Antes de eso, intenté seguir la información de @Rarst, intenté exportar la base de datos y limpiarla manualmente, probé el complemento de desinfección UTF-8 con una versión modificada desde aquí http://www.prelovac.com/vladimir/ultimate-solution-to-weird-utf-character-coding-problem (Lo que en realidad funcionó bastante bien, pero no arregló a todos los personajes. Y probablemente fue una idea terrible).

De todos modos, si alguno de ustedes se encuentra con este problema, consulte el primer enlace que publiqué. El procedimiento fue bastante simple y básicamente se redujo a reemplazar SET NAMES latin1 con SET NAMES utf8 Después de exportar la base de datos, luego asegúrese de importar la nueva base de datos limpia explícitamente como UTF8.

Otros consejos

Aquí hay otra solución que funcionó para mí ...

Solo comentar DB_CHARSET y DB_COLLATE en wp-config.php

//define('DB_CHARSET', 'utf8');

//define('DB_COLLATE', '');

Ver Convertir conjuntos de caracteres de la base de datos en el códice. El artículo tiene una nota sobre ser completamente reescrito a la versión 3.0.1, por lo que la información debe estar actualizada.

Hice la transición de los archivos de mi sitio web de un directorio antiguo a nuevo y pude modificar:

Define ('db_charset', 'utf8mb4');

a

Define ('db_charset', 'utf8');

Y esto resolvió el problema de espacio blanco de diamantes negros.

Licenciado bajo: CC-BY-SA con atribución
scroll top