Suele ser frecuente que cuando incluimos plantillas de WordPress falte alguna de las traducciones que necesitamos para nuestro cliente. Además rara es la ocasión que la que nuestras necesidades no requieren que incluyamos modificaciones en la plantilla y tengamos que desarrollar un tema hijo.

En este artículo explicaremos cómo incluir una traducción de un tema de WordPress en nuestro tema hijo y configurarlo adecuadamente.

Los ficheros donde se almacenan las traducciones

Generalmente si investigas la estructura de carpetas de una plantilla o tema de WordPress podréis comprobar como casi siempre incluye un directorio lang en donde se alamacenan todos los ficheros de traducciones que soporta la plantilla. En esta estructura de ficheros podremos observar como existen ficheros *.po (ficheros editables que contienen las traducciones) y ficheros *.mo que son los que WordPress lee e interpreta para mostrar los textos traducidos.

Si necesitas una buena guía para realizar traducciones aquí tienes una entrada que realmente te será muy útil. Sin embargo ese no es el objeto del artículo que nos ocupa, sino un paso más allá, cuando ya los tenemos creados.

Incluir ficheros .po y .mo en temas hijos de WordPress

Cuando tenemos que realizar una traducción de una plantilla es preferible incluir nuestra traducción en el tema hijo y no en el padre por si al realizar alguna actualización del tema existe el riesgo de borrar o perder esa traducción. De ese modo nos aseguramos que todo nuestro trabajo y modificaciones se encuentran a salvo en el tema hijo.

Lo primero es crear una carpeta en nuestro tema hijo una carpeta para albergar estos ficheros, por ejemplo lang en donde incluiremos los ficheros *.po y *.mo

A continuación buscaremos el textdomain del tema padre. Deberás consultar el fichero style.css del tema padre para confirmarlo. Suele aparecer del siguiente modo:

/*
Theme Name: Twenty Eleven
Theme URI: https://wordpress.org/themes/twentyeleven/
Author: the WordPress team
(...)
Text Domain: twentyeleven
*/

Por último incluiremos el siguiente código en el fichero functions.php de nuestro tema hijo para asegurarnos que localice las nuevas traducciones añadidas.

function my_child_theme_setup() {
    load_child_theme_textdomain( 'twentyeleven', get_stylesheet_directory() . '/lang' );
}
add_action( 'after_setup_theme', 'my_child_theme_setup' );

Una vez hecho esto ya podemos elegir el idioma correspondiente en el área de administración Ajustes > Generales > Idioma del sitio y ya podremos ver los mensajes y opciones de menú en el idioma que hayamos incluido.

Un proceso como veis muy sencillo y que nos permite siempre tener todo nuestro código a salvo en caso de actualizar la plantilla padre. Espero os sea de utilidad.

Fuentes

Cómo traducir un tema o un plugin de WordPress: archivos .po y .mo

Comparte si te ha gustado
  •  
  •  
  •  
  •  
  •  

Autor:
Última actualización:

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *