Lo primero que tenemos que tener en cuenta es que todas las referencias de texto tienen que estar realizadas con estas funciones:
- __()
- _e()
- esc_html_e()
- esc_html__()
Es conveniente al usar estas funciones tener bien declarado en el tema un text domain único. Para esto necesitamos en el archivo CSS style.css tener declarado en los comentarios de la cabecera lo siguiente:
/* Theme Name: Nombre del Tema Description: Descripción del tema Author: Alejandro Garcia Palomo Author URI: https://alejandrogarciapalomo.es Version: 0.0.1 License: GNU General Public License version 2 License URI: license.txtText Domain: nombre_del_temaTags: multilanguage-theme, custom-background*/
Y también necesitamos tener en el arhivo functions.php del tema declarado lo siguiente:
add_action( 'after_setup_theme', 'nombre_del_tema_setup' );function nombre_del_tema_setup() { load_child_theme_textdomain( 'nombre_del_tema', get_stylesheet_directory() . '/languages' );}
IMPORTANTE saber que con esta función estamos declarando que nuestro tema va a tener unos archivos de traducciones que estarán ubicados en: wp-content/languages/themes/ y los archivos se nombrarán como nombre_del_tema-es_ES.mo y nombre_del_tema-es_ES.po.
Una vez tenemos configurado el tema para que sea multilenguaje nos hace falta generar el archivo .mo y .po.
Para esto tendremos que descargar el extractor y editor Poedit.
Una vez instalado, hacemos los siguientes pasos:
- Archivo / Nuevo para crear una nueva traducción
- Indicamos el idioma que queremos traducir, español por ejemplo y pulsamos en Aceptar
- Catálogo / Propiedades
- En la primera pestaña (Propiedades de traducción) podemos ver el idioma y cambiarlo si nos equivocamos anteriormente
- En la primera pestaña también podemos seleccionar el Conjunto de caracteres en caso de que no sea UTF-8 que es el valor que se señala por defecto. Esto no se debería de cambiar y nuestro tema debería de estar codificado en UTF-8.
- En la segunda pestaña tenemos las Rutas de fuentes. Puede que nos salga un mensaje de que debemos guardar antes el fichero, en tal caso le daremos a Aceptar, Archivo / Guardar y guardaremos el fichero.
- En la segunda pestaña (Rutas de fuentes) tendremos que señalar la carpeta o ficheros PHP de nuestro tema dónde están ubicados en nuestro ordenador para poderlos leer y extraer la información. Para ello en Rutas pulsamos sobre el símbolo + y agregamos la carpeta o ficheros.
- En la tercera pestaña (Palabras clave originales) tendremos que agregar pulsando el símbolo + las palabras clave de las funciones para traducir. En nuestro caso insertaremos las vistas anteriormente:
- _e
- __
- esc_html_e
- esc_html__
- Le damos a Aceptar
- Catálogo / Actualizar desde fuentes
- Nos saldrá un mensaje de que se ha modificado el catálogo, si lo queremos guardar. Pulsamos en Guardar
- Nos saldrán los textos que podremos traducir seleccionando e insertando la traducción en la parte inferior de la ventana.
- Una vez terminemos la traducción le daremos a guardar.
- Si no nos creó el archivo .mo podemos generarlo en Archivo / Compilar en MO...