Traduzione del widget nel mio plugin
Sto aggiungendo l'i18n al widget di List Category Posts. Ho creato correttamente il file .pot, e i file .po e .mo per lo spagnolo e l'inglese. Tutte le stringhe vengono visualizzate con _e()
nel file del form.
La struttura delle directory è la seguente:
/
include/
ListCategoryPostsWidget.php
lcp_widget_form.php
languages/
es_ES.mo
en_US.mo
plugin.php
Ci sono altri file, ma questi sono quelli coinvolti nella traduzione. Dalla mia classe Widget (ListCategoryPostsWidget.php) sto usando questo per registrare la traduzione:
$translation_dir = '../languages';
load_plugin_textdomain( 'list-category-posts', null, $translation_dir );
E questo è il codice che sto usando per includere il file del form nel file ListCategoryPostsWidget.php:
/** @see WP_Widget::form */
function form($instance) {
include('lcp_widget_form.php');
}
La lingua predefinita è l'inglese, quindi funziona bene. Ma quando imposto WP_LANG su "es_ES" nel mio wp-config, vedo ancora il testo nel widget in inglese. Qualche idea? MODIFICA: Quindi, sto aggiungendo altro codice:
<p><label for="<?php echo $this->get_field_id('title'); ?>">
<?php _e("Titolo", 'list-category-posts')?></label>
Questo è come sto usando la funzione _e in lcp_widget_form.php.

Sulla base del tuo commento:
L'html generato dal widget? Quello mostra semplicemente le stringhe nella funzione _e per esempio: _e("Category") mostra "Category"
Sospetto che tu non abbia configurato correttamente le stringhe di traduzione. Devi includere il textdomain in ogni chiamata di funzione per la traduzione delle stringhe, altrimenti le stringhe non verranno mai tradotte.
Ad esempio, per il tuo textdomain 'list-category-posts'
:
_e( 'Category' )
...dovrebbe invece essere:
_e( 'Category', 'list-category-posts' )
Assicurati che tutte le tue funzioni per le stringhe di traduzione siano dichiarate di conseguenza.

Ops, scusa ho sbagliato i commenti, sto usando il metodo corretto: _e("Category", 'list-category-posts')

Questa è una vecchia domanda ma stavo solo controllando il mio account qui. L'i18n è stato finalmente aggiunto: http://wordpress.org/extend/plugins/list-category-posts/changelog/, grazie Chip! :)
