Internacionalizando 
seu desenvolvimento
@RafaelFunchal 
Publicitário, Desenvolvedor e músico nas 
horas vagas 
Desenvolve com WordPress desde 2009 
Administrador do grupo WordPress Brasil no 
Facebook e demais grupos do GUWP 
Support Guru na MailPoet.com 
Internacionalizando seu desenvolvimento @RafaelFunchal
Internacionalização 
Internacionalização é o processo de desenvolver seu 
plugin ou tema de uma forma que seja possível traduzi-lo 
facilmente. 
É comum abreviar o termo como i18n (por que há 18 letras entre 
as letras i e n na palavra internacionalization). 
Internacionalizando seu desenvolvimento @RafaelFunchal
Localização 
Localização se refere a todos os processos de tradução 
do seu tema ou plugin. 
Normalmente é abreviado como l10n (por que há 10 letras entre 
as letras l e n na palavra localization). 
Exemplos: GlotPress, Transifex, PoEdit e Virtaal 
Internacionalizando seu desenvolvimento @RafaelFunchal
Text Domain 
tornando seu código traduzível
Text Domain no seu plugin 
/* 
* Plugin Name: Meu plugin 
* Author: Autor do plugin 
* Text Domain: meu-plugin 
* Domain Path: /languages 
*/ 
Internacionalizando seu desenvolvimento @RafaelFunchal
Text Domain no seu plugin 
add_action( 'plugins_loaded', 'myplugin_load_textdomain' ); 
function myplugin_load_textdomain() { 
load_plugin_textdomain( 
'meu-plugin', 
false, 
dirname( plugin_basename( __FILE__ ) ) . '/languages' 
); 
} 
Internacionalizando seu desenvolvimento @RafaelFunchal
Text Domain no seu tema 
/* 
* Theme Name: Meu tema 
* Author: Autor do tema 
* Text Domain: meu-tema 
* Domain Path: /languages 
*/ 
Internacionalizando seu desenvolvimento @RafaelFunchal
Text Domain no seu tema 
add_action('after_setup_theme', mytheme_load_textdomain); 
function mytheme_load_textdomain(){ 
load_theme_textdomain( 
'meu-tema', 
get_template_directory() . '/languages' 
); 
} 
Internacionalizando seu desenvolvimento @RafaelFunchal
Funções 
para facilitar sua vida
Funções básicas 
__() 
_e() 
_x() 
_ex() 
_n() 
_nx() 
_n_noop() 
_nx_noop() 
translate_nooped_plural() 
Internacionalizando seu desenvolvimento @RafaelFunchal
Inserindo no HTML 
esc_html__() 
esc_html_e() 
esc_html_x() 
esc_attr__() 
esc_attr_e() 
esc_attr_x() 
Internacionalizando seu desenvolvimento @RafaelFunchal
Data e número 
number_format_i18n() 
date_i18n() 
Internacionalizando seu desenvolvimento @RafaelFunchal
Exemplos 
como utilizar no seu código
Funções básicas 
__( 'Blog Options', 'my-textdomain' ); 
_e( 'WordPress is the best!', 'my-textdomain' ); 
Internacionalizando seu desenvolvimento @RafaelFunchal
Variáveis 
printf( 
__( 'Your city is %s.', 'my-textdomain' ), 
$city 
); 
Internacionalizando seu desenvolvimento @RafaelFunchal
Plural 
printf( 
_n( 
'One comment', 
'%s comments', 
get_comments_number(), 
'my-textdomain' 
), 
number_format_i18n( get_comments_number() ) 
); 
Internacionalizando seu desenvolvimento @RafaelFunchal
Contexto 
_x( 'Post', 'noun', 'my-textdomain' ); 
_x( 'Post', 'verb', 'my-textdomain' ); 
Internacionalizando seu desenvolvimento @RafaelFunchal
Mais conteúdo 
http://codex.wordpress.org/I18n_for_WordPress_Developers 
https://developer.wordpress.org/plugins/internationalization/how-to-internationalize- 
your-plugin/ 
https://developer.wordpress.org/themes/functionality/internationalization/ 
https://codex.wordpress.org/Function_Reference/load_plugin_textdomain 
http://codex.wordpress.org/Function_Reference/load_theme_textdomain 
http://codex.wordpress.org/Function_Reference/wp_localize_script 
Internacionalizando seu desenvolvimento @RafaelFunchal
Obrigado! 
caso tenham mais perguntas, 
essa é a hora! :-)

Internacionalizando­ seu desenvolvimento

  • 1.
  • 2.
    @RafaelFunchal Publicitário, Desenvolvedore músico nas horas vagas Desenvolve com WordPress desde 2009 Administrador do grupo WordPress Brasil no Facebook e demais grupos do GUWP Support Guru na MailPoet.com Internacionalizando seu desenvolvimento @RafaelFunchal
  • 3.
    Internacionalização Internacionalização éo processo de desenvolver seu plugin ou tema de uma forma que seja possível traduzi-lo facilmente. É comum abreviar o termo como i18n (por que há 18 letras entre as letras i e n na palavra internacionalization). Internacionalizando seu desenvolvimento @RafaelFunchal
  • 4.
    Localização Localização serefere a todos os processos de tradução do seu tema ou plugin. Normalmente é abreviado como l10n (por que há 10 letras entre as letras l e n na palavra localization). Exemplos: GlotPress, Transifex, PoEdit e Virtaal Internacionalizando seu desenvolvimento @RafaelFunchal
  • 5.
    Text Domain tornandoseu código traduzível
  • 6.
    Text Domain noseu plugin /* * Plugin Name: Meu plugin * Author: Autor do plugin * Text Domain: meu-plugin * Domain Path: /languages */ Internacionalizando seu desenvolvimento @RafaelFunchal
  • 7.
    Text Domain noseu plugin add_action( 'plugins_loaded', 'myplugin_load_textdomain' ); function myplugin_load_textdomain() { load_plugin_textdomain( 'meu-plugin', false, dirname( plugin_basename( __FILE__ ) ) . '/languages' ); } Internacionalizando seu desenvolvimento @RafaelFunchal
  • 8.
    Text Domain noseu tema /* * Theme Name: Meu tema * Author: Autor do tema * Text Domain: meu-tema * Domain Path: /languages */ Internacionalizando seu desenvolvimento @RafaelFunchal
  • 9.
    Text Domain noseu tema add_action('after_setup_theme', mytheme_load_textdomain); function mytheme_load_textdomain(){ load_theme_textdomain( 'meu-tema', get_template_directory() . '/languages' ); } Internacionalizando seu desenvolvimento @RafaelFunchal
  • 10.
  • 11.
    Funções básicas __() _e() _x() _ex() _n() _nx() _n_noop() _nx_noop() translate_nooped_plural() Internacionalizando seu desenvolvimento @RafaelFunchal
  • 12.
    Inserindo no HTML esc_html__() esc_html_e() esc_html_x() esc_attr__() esc_attr_e() esc_attr_x() Internacionalizando seu desenvolvimento @RafaelFunchal
  • 13.
    Data e número number_format_i18n() date_i18n() Internacionalizando seu desenvolvimento @RafaelFunchal
  • 14.
    Exemplos como utilizarno seu código
  • 15.
    Funções básicas __('Blog Options', 'my-textdomain' ); _e( 'WordPress is the best!', 'my-textdomain' ); Internacionalizando seu desenvolvimento @RafaelFunchal
  • 16.
    Variáveis printf( __('Your city is %s.', 'my-textdomain' ), $city ); Internacionalizando seu desenvolvimento @RafaelFunchal
  • 17.
    Plural printf( _n( 'One comment', '%s comments', get_comments_number(), 'my-textdomain' ), number_format_i18n( get_comments_number() ) ); Internacionalizando seu desenvolvimento @RafaelFunchal
  • 18.
    Contexto _x( 'Post','noun', 'my-textdomain' ); _x( 'Post', 'verb', 'my-textdomain' ); Internacionalizando seu desenvolvimento @RafaelFunchal
  • 19.
    Mais conteúdo http://codex.wordpress.org/I18n_for_WordPress_Developers https://developer.wordpress.org/plugins/internationalization/how-to-internationalize- your-plugin/ https://developer.wordpress.org/themes/functionality/internationalization/ https://codex.wordpress.org/Function_Reference/load_plugin_textdomain http://codex.wordpress.org/Function_Reference/load_theme_textdomain http://codex.wordpress.org/Function_Reference/wp_localize_script Internacionalizando seu desenvolvimento @RafaelFunchal
  • 20.
    Obrigado! caso tenhammais perguntas, essa é a hora! :-)