0
1

SHARE

Como Internacionalizar seu Plugin WordPress (i18n e l10n) do Jeito Certo

Internacionalização e Localização (i18n e l10n)

Aprenda como preparar seu plugin para tradução com WordPress, incluindo uso de text domains, funções de i18n e criação de arquivos .pot, .po e .mo
Este post é a parte 19 de 19 da Série WordPress Extremo

Fala, pessoal! 👋
Aqui é o Asllan Maciel e hoje vamos mergulhar em uma parte fundamental para quem quer distribuir plugins de WordPress para o mundo: internacionalização e localização — os famosos i18n e l10n.

Se você já criou um plugin e usou strings direto no código como "Erro ao salvar dados" ou "Clique aqui", saiba que isso dificulta (ou impede) a tradução do seu plugin para outros idiomas.

Vamos resolver isso e deixar seu projeto pronto para ser usado em qualquer idioma!


🌍 Diferença entre i18n e l10n

  • Internacionalização (i18n)
    É o processo de preparar seu código para ser traduzido — ou seja, usar funções que permitem a tradução, organizar arquivos .pot etc.
  • Localização (l10n)
    É a parte onde de fato traduzimos os textos — criando arquivos .po e .mo para o idioma desejado.

🧰 Como preparar seu plugin para i18n no WordPress

1. Text Domain

É o identificador único para as traduções do seu plugin. Deve ser igual ao slug do plugin.

Exemplo:
Se o nome do plugin for wp-arquitetura-extrema.php, o domínio deve ser:

load_plugin_textdomain('wp-arquitetura-extrema', false, dirname(plugin_basename(__FILE__)) . '/languages');

Inclua isso no seu arquivo principal do plugin logo após carregar o autoload.


2. Funções de tradução

Aqui estão as funções que você deve usar em vez de strings fixas:

FunçãoUso
__()Retorna a string traduzida
_e()Exibe a string traduzida
_x()Como __, mas com contexto
_n()Para pluralização (singular, plural, $number, domain)
_nx()Plural com contexto

Exemplo:

echo __('Erro ao processar o pagamento', 'wp-arquitetura-extrema');
_e('Clique aqui para continuar', 'wp-arquitetura-extrema');

3. Estrutura de Pastas

Seu plugin deve conter uma pasta chamada languages/.
Dentro dela ficarão os arquivos de tradução: .pot, .po e .mo.

Exemplo:

wp-arquitetura-extrema/
├── languages/
│   ├── wp-arquitetura-extrema.pot
│   ├── wp-arquitetura-extrema-pt_BR.po
│   └── wp-arquitetura-extrema-pt_BR.mo

🛠️ Gerando o Arquivo .pot

Você pode usar o WP-CLI para gerar automaticamente o arquivo .pot com todas as strings que podem ser traduzidas.

Comando:

wp i18n make-pot . languages/wp-arquitetura-extrema.pot --slug=wp-arquitetura-extrema

Lembre-se de rodar o comando dentro da pasta do seu plugin.


🧪 Exemplo prático no seu plugin

Suponha que você tenha isso no seu plugin:

echo 'Erro ao conectar com a API';

Substitua por:

echo __('Erro ao conectar com a API', 'wp-arquitetura-extrema');

Agora a string está pronta para ser traduzida.


🔄 Traduzindo com Poedit

  1. Abra o arquivo .pot no Poedit.
  2. Adicione as traduções para pt_BR.
  3. Salve como wp-arquitetura-extrema-pt_BR.po.
  4. O Poedit vai gerar automaticamente o .mo.

Coloque ambos em languages/ e está pronto.


🔗 Lembrando os dias anteriores

  • Já viu como organizamos nosso plugin com Composer e PSR-4? 👉 Dia 01/15
  • Já sabe como criar serviços e repositórios desacoplados? 👉 Dia 02/15
  • Já criamos logs para rastrear erros no plugin? 👉 Dia 07/15

✨ Encerrando

Adicionar i18n/l10n mostra profissionalismo e respeito ao seu público internacional.

Se você está construindo um plugin para mais do que só você mesmo, isso é obrigatório.


🚀 Quer avançar mais rápido?

🔗 Faça parte dos nossos cursos e mentorias
📲 Siga @wp24horas no Instagram e YouTube.
💬 Deixe seu comentário aqui abaixo!

Navegação<< Segurança Profunda em Plugins WordPress

Não perca mais nenhuma atualização aqui!

Ative as Notificações!

Clique aqui e, em seguida, clique em Permitir na caixa que aparecerá na parte superior da janela, próximo à barra de endereços.

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! Ao se tornar um assinante do WP24Horas, você terá acesso a:

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!

Não perca mais nenhuma atualização aqui!

Tabela de Conteúdo
PUBLICIDADE
Últimos Posts
Segurança Profunda em Plugins WordPress

Segurança Profunda em Plugins WordPress

Como Tratar Erros e Exceptions em Plugins WordPress do Jeito Certo

Tratamento de Erros e Uso Inteligente de Exceptions em Plugins WordPress

Como Implementar um Sistema de Logs Profissional em Plugins WordPress

Como Gerenciar Logs e Erros Internos em Plugins WordPress (Do Jeito Certo)

Como Criar um Bloco WordPress com Filtro por Múltiplas Categorias

Bloco de Posts com Filtro por Múltiplas Categorias

Como Filtrar Posts por Categoria em um Bloco Gutenberg

Filtrando Posts por Categoria no Editor do Bloco

Como Criar um Bloco Dinâmico no WordPress com Renderização PHP

Bloco Dinâmico com Renderização no Servidor

Você precisa estar logado para ver esta informação.

Torne-se um Assinante e Eleve seu Conhecimento do WordPress!

Acesso Exclusivo, Suporte Especializado e Muito Mais.

Se você está aproveitando nosso conteúdo gratuito, vai adorar os benefícios exclusivos que oferecemos aos nossos assinantes! 

Não perca a oportunidade de maximizar seu potencial no WordPress. Clique no botão abaixo para se tornar um assinante e leve suas habilidades ao próximo nível!