Saltar al contenido

Wordpress - Traduce un complemento usando archivos .po .mo

Verificamos de forma cada uno de los artículos de nuestro sitio web con el objetivo de mostrarte en todo momento información veraz y certera.

Solución:

El editor

Hay otros, pero este es el más utilizado: Poedit, un editor multiplataforma de catálogos gettext (archivos .po).

Los formatos

  • .mo significa objeto de máquina
    -- exportación compilada del .po archivo que es utilizado por WordPress
  • .po significa objeto portátil
    -- archivo de texto editable con las cadenas de traducción
    -- basado en el maestro .pot archivo, utilizando Actualizar desde archivo POT Función PoEdit
    -- algunas personas distribuyen esto como un archivo maestro, pero debe usarse solo para traducciones
  • .pot significa Plantilla de objeto portátil
    -- archivo de texto editable usado para tomar todas las cadenas traducibles del propio WordPress y Temas y Complementos, usando Actualizar desde fuentes Función PoEdit

El procedimiento

  • Duplique el archivo .pot y cámbiele el nombre a plugin-basename-lang_COUNTRY.po
  • Ejemplo para el caso del complemento al que se hace referencia: subscribe-reloaded-pt_BR.po

    -- pt_BR significa portugués de Brasil, pero muchos idiomas no tienen una variación de país...
    -- tendrá que completar con su propio idioma

  • WPLANG en wp-config.php El archivo debe estar configurado en su idioma, por ejemplo, pt_BR
  • Cada vez que guarde el .po archivo, PoEdit genera automáticamente un .mo archivo, que es el que usa WordPress y básicamente el único que necesita cargar

Observaciones

  • Si hace una traducción completa o parcial decente, envíela al autor del complemento para que pueda incluirla en el Repositorio y obtenga crédito por ella.
  • No olvide hacer una copia de seguridad de su traducción, porque si actualiza el complemento, su archivo se perderá
  • La sugerencia del complemento @ user17078 es bastante buena, pero nunca la usé mucho

Puede probar este complemento de localización de estilo de código:. Puede traducir sus complementos y temas usando esto.

(Aquí hay un EJEMPLO de traducción al DEUTSCH. CAMBIE las costumbres a SUS DESEADOS.)

en cada encabezado de complemento, hay un nombre único. (por ejemplo:

/*
Plugin Name: my-pluginname
.......
*/

luego, en la carpeta de ese complemento, cree una carpeta "idiomas";

luego, en el archivo .php de su complemento (en algún lugar en la parte superior), inserte el código de inicialización:

class load_language 

    public function __construct()
    
    add_action('init', array($this, 'load_my_transl'));
    

     public function load_my_transl()
    
        load_plugin_textdomain('my-pluginname', FALSE, dirname(plugin_basename(__FILE__)).'/languages/');
    


$zzzz = new load_language;

luego abra cualquier editor de texto, luego inserte este código (TENGA EN CUENTA QUE solo estamos agregando dos mensajes de muestra, "hola" y "adiós", por lo que puede AGREGAR TANTOS mensajes COMO QUIERA con líneas similares).

# English translations for PACKAGE package.
# Copyright (C) 2012 THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Automatically generated, 2012.
#
msgid ""
msgstr ""
"Project-Id-Version: my-pluginname 1.0n"
"Report-Msgid-Bugs-To: n"
"POT-Creation-Date: 2012-08-06 13:46-0400n"
"PO-Revision-Date: 2013-03-21 11:20+0400n"
"Last-Translator: Automatically generatedn"
"Language-Team: nonen"
"MIME-Version: 1.0n"
"Content-Type: text/plain; charset=utf-8n"
"X-Poedit-SourceCharset: iso-8859-1n"
"Content-Transfer-Encoding: 8bitn"
"Plural-Forms: nplurals=2; plural=(n != 1);n"
"X-Generator: Poedit 1.5.4n"


#: mypluginindex.php:87 (it is just a line of a note, to remind where our code appears)
msgid "mymessage1"
msgstr "Hello"

#: mypluginindex.php:88
msgid "mymessage2"
msgstr "Bye"

luego guarde este archivo como "my-pluginname-en_US.po" (tenga en cuenta que .po es una extensión de archivo, así que verifique que su programa de edición de texto no se haya guardado en "my-pluginname-en_US.po.TXT").

luego descargue el software POEDIT y abra este archivo. luego edite el campo "traducción", y luego guárdelo como "my-pluginname-de_DE" se generarán dos archivos (si poEdit no genera el segundo archivo .mo automáticamente, solo vaya a Archivo -> Preferencias -> Editor y verifique el cuadro que dice "Compilar automáticamente el archivo .mo al guardar"),

luego coloque esos dos archivos en la carpeta "idiomas".

después de esto, abre wp-config.php y encuentra este código:

define ('WPLANG, '');

y cambiar a

define ('WPLANG, 'de_DE');

Eso es todo. Cuando se carga WordPress, leerá el archivo de idioma de sus complementos, con prefix -de_DE.

Entonces, en el archivo .php del complemento, en lugar de:

echo "Something string";

Deberías usar:

echo __("mymessage1", 'my-pluginname');

Terminado. Ahora deberías probar tu plugin.

pd enlaces usados:

  • codex.wordpress.org/I18n_for_WordPress_Developers
  • codex.wordpress.org/Translating_WordPress
  • codex.wordpress.org/Writing_a_Plugin
  • codex.wordpress.org/Instalación_de_WordPress_en_su_idioma

Comentarios y puntuaciones

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada.