Diferencia entre revisiones de «Usuario:ManuelRomero/ProgramacionWeb/php/multilenguaje»
De WikiEducator
(Página creada con «===gettext()=== *Función en php que nos va a permitir tener nuestra página en varios lenguajes, lo que se llama internacionalizar nuestra aplicación de una forma profesi...») |
(→Instalación) |
||
Línea 8: | Línea 8: | ||
apt-get install gettext | apt-get install gettext | ||
</source> | </source> | ||
+ | *Fichero de configuración de php (En mi caso) | ||
+ | /etct/php/7.2/apache/php.ini | ||
+ | y quitamos el comentario ''''';''''' de la extensión ''''gettext''''' | ||
+ | <source lang=bash> | ||
+ | .... | ||
+ | ;extension=gd2 | ||
+ | extension=gettext | ||
+ | ;extension=gmp | ||
+ | .... | ||
+ | </source> | ||
+ | *Reiniciamos servicio | ||
+ | <source lang=bash> | ||
+ | sudo service apache2 restart | ||
+ | </source> | ||
+ | |||
===Estructura de dierectorios=== | ===Estructura de dierectorios=== | ||
*Se trata de tener un directorio por cada idioma que queramos hacer traducir | *Se trata de tener un directorio por cada idioma que queramos hacer traducir |
Revisión de 01:52 8 sep 2018
Contenido
gettext()
- Función en php que nos va a permitir tener nuestra página en varios lenguajes, lo que se llama internacionalizar nuestra aplicación de una forma profesional
https://www.gnu.org/software/gettext/manual/gettext.html
Instalación
- Para poder usar esta función debemos tener instalado el paquete de ubuntu identificado con el mismo nombre.
apt-get install gettext
- Fichero de configuración de php (En mi caso)
/etct/php/7.2/apache/php.ini
y quitamos el comentario ; de la extensión 'gettext
.... ;extension=gd2 extension=gettext ;extension=gmp ....
- Reiniciamos servicio
sudo service apache2 restart
Estructura de dierectorios
- Se trata de tener un directorio por cada idioma que queramos hacer traducir
- Estos directorios se espera bajo locate
- Los nombres de cada directorio de cada idioma a de ser un nombre estandarizado
- Podemos obtener una lista de las localizaciones instaladas en nuestro sistema
locale -a
Creando los ficheros de texto
- Una herramienta a usar puede ser poedit (Hay varias, esta parece que tiene mucha aceptación)
apt-get install poedit
La página oficial
https://poedit.net/
Funciones a usar para traducir
- bind_textdomain_codeset
- Especifica el juego de caracteres en que los mensajes del catálogo del dominio serán devueltos
- bindtextdomain
- Establece la ruta del dominio
- dcgettext
- Sobrescribe el dominio de la búsqueda única del mensaje
- dcngettext
- Versión plural de dcgettext
- dgettext
- Sobrescribe el dominio actual
- dngettext
- Versión plural de dgettext
- gettext
- Consultar un mensaje en el dominio actual
- ngettext
- Versión plural de gettext
- textdomain
- Establece el dominio actual