Si usáis Poedit, como herramienta de traducción de vuestras webs… y suponiendo que nuestro server ya tiene configurado la directivaAddDefaultCharset UTF-8.
4 pasos imprescindibles para evitar problemas de signos o caracteres raros como: �, etc… en diferentes lenguajes (alemán, ruso, etc…) que tengan caracteres diferentes del español:
1. Los archivos fuente (php, html…) tienen que estar codificados en utf-8. Esto es muy importante.
2. Dentro del «head» de vuestras webs, el meta charset tiene que tener la codificación de caracteres en UTF-8:
Para html 5:
<meta charset="utf-8" />
Para html 4:
<meta http-equiv="Content-type" content="text/html;charset=UTF-8">
3. En el archivo php que llamamos a los archivos «locale» de los diferentes idiomas, hay que añadir la función bind_textdomain_codeset con su parámetro «utf-8», ej:
putenv("LC_ALL=$language"); setlocale(LC_ALL, $language); bindtextdomain("messages", "./locale/"); bind_textdomain_codeset("messages", 'utf-8'); /* importante */ textdomain("messages");
4. En configuración de los archivos poedit, en el menu: catálogo > propiedades > propiedades de traducción. Elegir «UTF-8» en los 2 conjunto de caracteres.
Agradezco tu comentario 🤘