O WordPress não tem nenhuma função denominada “make_entry”.
Tem sim, uma função de uma classe com esse nome ( classe MO ) , logo, a forma de chamar essa função será algo:
$oLanguage = new MO();
....funções para carregar traduções......
$oLanguage->make_entry($original,$tranlation);
....funções para carregar traduções......
Mas a volta seria um pouco grande se fosses por esse caminho, aconselho a leres alguns artigos do Codex, este por exemplo: http://codex.wordpress.org/I18n_for_WordPress_Developers
Eu sei como criar tradução com arquivo .mo, mas queria que o usuário pudesse ele mesmo alterar a tradução, e usando .mo deficultaria isso.
você passou um código para carregar tradução, mas não teria como definir uma string e sua tradução manualmente?
Se é para o utilizador alterar, porque não usar o get/add/delete_option e simplificas o processo?
porque queria que a tradução fosse inserida como no padrão do wordpresss __(“My string”)
A unica forma que estou a ver de fazeres isso sem os MO’s é usares as funções get/add/delete_option para administrares e o filtro gettex para retornar, exemplo:
function __filter_gettext($translated_text, $text, $domain) {
switch ($translated_text) {
case 'My First Translation String' :
$translated_text = get_option('translate_my_first_string', $translated_text);
break;
case 'My Secound Translation String' :
$translated_text = get_option('translate_my_secound_string', $translated_text);
break;
}
return $translated_text;
}
add_filter('gettext', '__filter_gettext');