Internacionalizando seu desenvolvimento

20
Internacionalizando seu desenvolvimento

Transcript of Internacionalizando seu desenvolvimento

Page 1: Internacionalizando seu desenvolvimento

Internacionalizandoseu desenvolvimento

Page 2: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

@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

Page 3: Internacionalizando seu desenvolvimento

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).

Page 4: Internacionalizando seu desenvolvimento

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

Page 5: Internacionalizando seu desenvolvimento

Text Domaintornando seu código traduzível

Page 6: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Text Domain no seu plugin

/*

* Plugin Name: Meu plugin

* Author: Autor do plugin

* Text Domain: meu-plugin

* Domain Path: /languages

*/

Page 7: Internacionalizando seu desenvolvimento

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'

);

}

Page 8: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Text Domain no seu tema

/*

* Theme Name: Meu tema

* Author: Autor do tema

* Text Domain: meu-tema

* Domain Path: /languages

*/

Page 9: Internacionalizando seu desenvolvimento

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'

);

}

Page 10: Internacionalizando seu desenvolvimento

Funçõespara facilitar sua vida

Page 11: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Funções básicas

__()

_e()

_x()

_ex()

_n()

_nx()

_n_noop()

_nx_noop()

translate_nooped_plural()

Page 12: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Inserindo no HTML

esc_html__()

esc_html_e()

esc_html_x()

esc_attr__()

esc_attr_e()

esc_attr_x()

Page 13: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Data e número

number_format_i18n()

date_i18n()

Page 14: Internacionalizando seu desenvolvimento

Exemploscomo utilizar no seu código

Page 15: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Funções básicas

__( 'Blog Options', 'my-textdomain' );

_e( 'WordPress is the best!', 'my-textdomain' );

Page 16: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Variáveis

printf(

__( 'Your city is %s.', 'my-textdomain' ),

$city

);

Page 17: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Plural

printf(

_n(

'One comment',

'%s comments',

get_comments_number(),

'my-textdomain'

),

number_format_i18n( get_comments_number() )

);

Page 18: Internacionalizando seu desenvolvimento

Internacionalizando seu desenvolvimento @RafaelFunchal

Contexto

_x( 'Post', 'noun', 'my-textdomain' );

_x( 'Post', 'verb', 'my-textdomain' );

Page 20: Internacionalizando seu desenvolvimento

Obrigado!caso tenham mais perguntas,essa é a hora! :-)