Plugin en un idioma diferente al de WordPress

poliglota

Hace algún tiempo que vimos cómo mostrar un tema WordPress en un idioma diferente al de la administración, el Escritorio de WordPress, pero hay ocasiones en que lo que necesitamos es hacer lo mismo, usar la versión en otro idioma pero de un plugin.

Digamos, por ejemplo, que usamos WordPress en español pero usamos un plugin que queremos que funcione en el sitio con los mensajes en inglés. Eso si, es fundamental que el plugin en cuestión esté preparado para localización y con el fichero de idioma correspondiente, lo que llamamos internacionalizado, tenlo en cuenta.

Pues bien, si tienes esa necesidad solo tendrías que añadir un código cómo el siguiente a tu plugin de funciones, o al archivo functions.php de tu tema:

//Plugin en otro idioma
function my_plugin_locale_filter($locale, $domain)
{
    if($domain === 'the_plugins_textdomain')
    {
        return 'en_US';
    }

    return $locale;
}
add_filter('plugin_locale', 'my_plugin_locale_filter', 10, 2);

La idea es intercambiar la llamada al load_plugin_textdomain con load_textdomain, donde tu apuntas al archivo en cuestión que quieras. Pero en este ejemplo lo que hacemos es una versión más limpia, usando el filtro plugin_locale, el cual te permite modificar la versión «local» usada por un plugin.

De todos modos si se te ocurre un modo mejor de hacerlo adelante, nos lo cuentas en los comentarios ¿ok?

VALORA Y COMPARTE ESTE ARTÍCULO PARA MEJORAR LA CALIDAD DEL BLOG…
(0 votos, promedio: 0)

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

AVISO: Esta publicación es de hace 3 años o más. Si es un código o un plugin podría no funcionar en las últimas versiones de WordPress, y si es una noticia podría estar ya obsoleta. Luego no digas que no te hemos avisado.

2 comentarios en “Plugin en un idioma diferente al de WordPress”

  1. Hola Fernando, tendrás alguna función para cargar el archivo del idioma de un plugin directo de /wp-content/languages/ ya que cuando uno traduce un plugin y se actualiza, se pierde y hay que cargarlo nuevamente

    Intenté con las indicaciones de esta página pero no funcionaron

    Saludos
    Ciro

  2. Javier Sánchez

    Hola, gracias por el post. Tengo algunas dudas ¿Hay que añadir el código en functions.php en alguna parte en especial? ¿Hay que darles valores a $domain y $locale? ¿la sentencia if es tal como es? Gracias

Deja un comentario

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

 

Ir arriba Ir al contenido