Uma introdução ao filtro Gettext

Publicados: 2023-02-12

Encontrar um plugin ou tema para o seu site WordPress que atenda a todos os seus requisitos pode ser um desafio. Muitos podem chegar perto, mas ainda precisam de ajustes ou personalizações. Além disso, como desenvolvedor, é vital garantir que seu código seja flexível o suficiente para oferecer suporte a usuários de todo o mundo.

Felizmente, existem alguns recursos do núcleo do WordPress que podem ajudá-lo a adaptar certos elementos do seu site. Isso permite que você personalize o texto do botão ou do rótulo em vez de abandonar um plug-in útil ou até mesmo preparar seu site para tradução.

Neste artigo, forneceremos uma melhor compreensão do filtro gettext, incluindo como ele funciona com o processo de tradução do seu site. Há muito o que cobrir, então vamos mergulhar de cabeça!

Índice
1. O que é Gettext?
2. Obtenha texto e PHP para tradução
2.1. Passo 1: Extrair strings de texto como arquivos POT
2.2. Etapa 2: criar um arquivo de objeto portátil (PO)
2.3. Etapa 3: converter para arquivos de objeto de máquina (MO)
3. Quando o filtro Gettext do WordPress é útil?
4. Espalhe sua mensagem com o WP Engine

O que é Gettext?

O filtro gettext permite que você modifique elementos de texto em seu site WordPress. É melhor compreendido através de um exemplo.

Digamos que seu formulário de comentário tenha dois campos: “Nome” e “E-mail”. Se preferir que eles leiam “Nome” e “Endereço de e-mail”, você pode usar o filtro gettext para modificá-los em vez de ter que substituir manualmente todas as instâncias de cada termo em seus arquivos de tema.

O filtro gettext só funciona se o seu site tiver sido preparado para tradução. Portanto, antes de nos aprofundarmos em como você pode usá-lo para personalizar o texto, precisamos discutir como internacionalizar seu código.

Alguns termos para entender antes de prosseguir incluem:

  • Internacionalização (i18n). Isso significa que seu código WordPress foi preparado para tradução para outros idiomas.
  • Localização (l10n). O processo pelo qual você pode usar a programação i18n e localizar sua instalação do WordPress para uso em um idioma nativo.
  • Biblioteca GNU gettext. GNU é um sistema operacional gratuito e de código aberto. Sua biblioteca gettext permite agrupar texto em sequências de código, que podem ser extraídas para tradução.
  • Arquivo POT: Para executar a extração das strings traduzíveis criadas com funções gettext, são criados arquivos Portable Object Template (POT).
  • Arquivo PO: Uma ferramenta como o Poedit usa um arquivo POT para criar arquivos Portable Object (PO) que incluem as traduções concluídas, bem como as strings traduzíveis.
  • Arquivo MO: Um arquivo Machine Object (MO) é criado a partir de um arquivo PO. Ele reside no seu diretório de plugins ou temas e é entregue pelo seu servidor se uma versão traduzida do seu site for solicitada.

Todos esses elementos desempenham funções na preparação de produtos WordPress para tradução, como você verá nas etapas abaixo.

Obtenhatexto e PHP para Tradução

Abaixo, explicamos o fluxo de trabalho para internacionalizar um tema ou plugin. Antes de experimentar essas alterações, é recomendável criar um tema filho para trabalhar. Isso protegerá seu site de possíveis desastres.

Passo 1: Extrair strings de texto como arquivos POT

A primeira coisa que você deve fazer é verificar se o seu tema ou plugin já inclui arquivos POT. Caso contrário, você precisará gerá-los automaticamente, criá-los manualmente com o Terminal ou usar um aplicativo recomendado pelo WordPress que mencionamos anteriormente chamado Poedit:

A versão Pro oferece um recurso WordPress rápido para criar os arquivos de que você precisa. No entanto, você ainda pode gerar um arquivo POT com alguns cliques extras usando o aplicativo gratuito.

Para começar, você precisará baixar e instalar o Poedit, que será executado em sua área de trabalho. Depois de fazer isso, navegue até Arquivo > Novo . Você será solicitado a selecionar o idioma para sua tradução:

Você precisará salvar seu novo projeto antes de prosseguir. Em seguida, você terá a opção de atualizar um arquivo POT existente ou extrair de fontes :

Se necessário, você também pode começar com um arquivo POT em branco e alterar suas sequências de texto no Poedit. Como alternativa, você pode pesquisar no Glotpress por plug-ins existentes e arquivos de tema para usar. No entanto, para este exemplo, vamos supor que você precise usar a outra opção.

Depois de clicar em Extrair de fontes, você terá três guias de configurações para configurar:

Você precisará definir os caminhos para as fontes de suas strings de texto. Você também pode excluir certos caminhos. Em seguida, você desejará configurar suas propriedades de tradução:

É aqui que você nomeará seu projeto e personalizará as configurações para plurais e outros elementos específicos do idioma. Por fim, você pode usar a guia Sources Keywords para concluir a configuração do seu arquivo POT:

Ao clicar no sinal de mais, você poderá adicionar palavras-chave gettext para concluir a configuração da tradução. Você também poderá ver e pesquisar sequências de texto de seus arquivos de origem.

Etapa 2: criar um arquivo de objeto portátil (PO)

Em seguida, você precisará converter seu arquivo POT em um arquivo PO para cada idioma que deseja adicionar. Se você não estiver traduzindo seu tema ou plug-in e planeja usar apenas o filtro gettext para substituições de inglês para inglês, defina os dois idiomas (fonte e tradução) para inglês.

Se você navegar até Catálogo > Atualizar do arquivo POT no Poedit, poderá escolher o arquivo que deseja traduzir:

Em seguida, o arquivo passará por um processo de extração durante o qual todas as strings traduzíveis serão trazidas para o Poedit. Isso cria o arquivo PO. Você vai querer nomeá-lo para corresponder aos seus outros arquivos para este projeto.

Em seguida, clique em Criar nova tradução na parte inferior da lista de sequências de texto para começar a fazer as alterações:

Para alterar o texto de inglês para inglês, basta clicar na string que deseja alterar e usar a janela de tradução abaixo do texto de origem para digitar a palavra substituída:

Conclua este processo para qualquer texto que você deseja alterar em todo o seu tema ou plug-in. Em seguida, você criará o último dos três arquivos necessários.

Etapa 3: converter para arquivos de objeto de máquina (MO)

Até agora, você tomou medidas para criar instruções de programação relacionadas às suas traduções. Agora, você precisará converter cada arquivo PO para que possa ser lido pelo servidor e entregue o texto desejado aos visitantes.

Dependendo de como você passa pelo fluxo de trabalho do Poedit, um arquivo MO pode já ter sido criado na pasta Idiomas do seu tema. Caso contrário, navegue até Arquivo > Compilar para MO :

Agora você deve ter os componentes necessários para executar os recursos possibilitados pelo filtro gettext no WordPress.

Quando o filtro Gettext do WordPress é útil?

Embora o processo descrito acima possa ajudá-lo a traduzir seu site para vários idiomas, esse não é o objetivo do filtro gettext. Em outras palavras, você não gostaria de usar esse gancho para transformar texto em inglês em espanhol.

Em vez disso, esta é mais uma funcionalidade de design que você pode usar para modificar o texto padrão adicionado ao seu site por um plug-in ou tema, como por meio de:

  • Personalização de etiquetas
  • Alterações no texto do botão
  • alterações de cabeçalho

Esse processo pode ser usado para personalizar qualquer texto considerado traduzível nos arquivos do seu site. Para fornecer outro exemplo, se o seu tema tiver botões predefinidos que dizem “Compre agora”, mas seu site precisa deles para ler “Assinar”, gettext é o filtro que pode tornar essa mudança uma realidade.

É importante observar que usar gettext com muita frequência pode ter um impacto negativo no desempenho do seu site. Este é um código adicional que deve ser executado toda vez que seu site for carregado, portanto, use-o com moderação para evitar a diminuição da velocidade da página.

Espalhe sua mensagem com o WP Engine

Decidir se deve ou não usar plug-ins ou criar alterações manuais de código em seu site pode ser um desafio. É por isso que ter os melhores recursos de desenvolvedor à mão é fundamental. Armado com suporte especializado e profissional do WP Engine, você terá o que precisa para criar um site altamente personalizado.

Confira nossos planos de hospedagem WordPress dedicada gerenciada para o seu próximo projeto. Cobrimos a manutenção do seu servidor para que você possa inovar com facilidade!