Todos os temas e plugins para WordPress podem se tornar compatíveis com o WPML. Siga este tutorial para aprender como testar a compatibilidade com o WPML e fazer as modificações necessárias para deixar seu código pronto para sites multilíngues.

Este tutorial explica como você pode tornar diferentes partes de seu tema prontos para uso multilíngue. Leva de uma a duas horas para ler e aplicar os passos a seguir ao seu tema.

Quando concluir, você deve criar um arquivo de configuração de idiomas XML e adicioná-lo ao diretório raiz do seu tema. Isso irá permitir a criação de sites multilíngues usando o seu tema, sem nenhuma configuração adicional.

Conteúdo

  1. Instalando os Componentes do WPML
  2. Estudo de Caso – Tema WooThemes Resort
  3. Traduzindo o Cabeçalho
  4. Traduzindo Menus
  5. Traduzindo o Slider do WooThemes
  6. Traduzindo Elementos Personalizados de Temas e Plugins
  7. Traduzindo o Corpo do Post
  8. Traduzindo Widgets
  9. Traduzindo o Rodapé
  10. Criando um Arquivo de Configuração de Idiomas para Seu Tema
  11. Suporte GetText para Strings no Código
  12. Dicas e Idéias para Depuração

1. Instalando os Componentes do WPML

O WPML inclui diversos componentes. Alguns são necessários para seu trabalho de compatibilidade de temas, enquanto outros são para administradores que irão gerenciar o conteúdo do site .

Você deve ativar os componentes essenciais do WPML, que permitirão que você traduza seu tema, incluindo WPML core, WPML String Translation e WPML Translation Management.

Componentes necessários do WPML
Componentes necessários do WPML

Para obtê-los, vá para sua conta no WPML e clique em Downloads.

Você também pode aprender a utilizar os outros componentes em Plugin principal e complementos do WPML.

2. Caso de Estudo – Tema WooThemes Resort

Usaremos este exemplo de website criado com Resort, do WooThemes:

homepage-exemplo

Vamos passar pelos elementos do site, aprendendo como traduzir temas complexos ou plugins usando o WPML.

3. Traduzindo o Cabeçalho

O cabeçalho do tema ou plugin vem das configurações gerais do WordPress:

config-geral
Configurações ->Geral

Como ele não faz parte de nenhum post, precisamos usar o módulo WPML String Translation para traduzí-lo. Vá para WPML->Tradução de Strings, procure a string usando seu conteúdo (o título do site) e traduza.

exemplo-traducao-strings
WPML->Tradução de Strings

Você não precisa fazer nada no tema ou plugin para que isso aconteça. O WPML lida com isso automaticamente. Mostramos como traduzir o nome do site, pois vamos usar a Tradução de Strings do WPML para muitas outras coisas em seu tema ou plugin.

4. Traduzindo Menus

O WPML traduz menus do WordPress sem que você precise fazer nada para isso. Desde que seu tema use o sistema padrão de menus do WordPress, o WPML irá traduzi-los.

Controles de tradução de menus
Controles de tradução de menus

Ao clicar em Aparência->Menus, você verá os controles de tradução de menus do WPML. Leia mais sobre a tradução de menus para entender como funciona.

5. Traduzindo o Slider do WooThemes (usando Tipos de Post Personalizados)

O tema que estamos usando tem um tipo de post personalizado, chamado ‘slide’, para o slider. Isso quer dizer que é fácil traduzí-lo com o WPML, sem muita configuração.

Precisamos dizer ao WPML que o tipo de post personalizado ‘slide’ é multilíngue. Isso significa que o WPML possibilitará sua tradução.

Você pode estar se perguntando por que o WPML permite que alguns conteúdos sejam multilíngues enquanto outros não têm informação de idioma. Boa pergunta!

Quando o conteúdo é multilíngue, o WPML filtra e retorna somente resultados no idioma atual. Em alguns casos, você quer usar exatamente o mesmo conteúdo para todos os idiomas. Por exemplo, se você quiser mostrar exatamente os mesmos slides (com os mesmos títulos) em todos os idiomas, você deve manter o tipo personalizado slide como não traduzível. Queremos traduzir os slides, de forma que eles tenham diferentes títulos de acordo com o idioma.

Usando a interface do WPML, edite um slide e role até o fim da página. Você verá uma seção chamada ‘Configuração de Conteúdos Multilíngues‘.

Configuração de Conteúdos Multilíngues
Configuração de Conteúdos Multilíngues

Clique na caixa de verificação para tornar o tipo personalizado traduzível e em Aplicar.

Você percebeu que ele está em cinza na nossa captura de tela? Não é por acaso. Isso aconteceu porque fornecemos um Arquivo de Configuração de Idiomas junto com o tema ou plugin.

O arquivo de configuração de idiomas diz ao WPML tudo o que ele precisa saber sobre o seu tema. Isso inclui quais os tipos personalizados, taxonomia ou campos personalizados devem ser traduzidos ou sincronizados e quais strings traduzir.

6. Traduzindo Elementos Personalizados de Temas ou Plugins

Muitos temas ou plugins têm funcionalidades únicas, que armazenam textos na tabela wp_options. A Mensagem de Introdução do Resort faz exatamente isso.

Mensagem de introdução do Resort
Mensagem de introdução do Resort

O tema ou plugin salva esses textos na tabela wp_options e precisamos dizer ao WPML que deve traduzi-los. Adicionamos essa informação ao Arquivo de Configuração de Idiomas. Nesse arquivo, dizemos ao WPML quais entradas da tabela wp_options devem ser traduzidas.

Essa técnica é boa quando as chaves das opções são fixas (como na maioria dos temas). Se seu tema usa arrays de entradas, que podem crescer com a entrada do usuário, você precisa registrar essas entradas dinamicamente. Use as funções icl_register_string e icl_t do WPML para fazer isso.

7. Traduzindo o Corpo do Post

O WPML deixa os usuários traduzirem o conteúdo facilmente. A tela de edição de posts inclui os controles de tradução do WPML, permitindo a criação de novas traduções e a edição das existentes.

Adicionando traduções
Adicionando traduções

Você não precisa fazer nada no tema ou no plugin para que isso aconteça. A tradução de conteúdos é uma funcionalidade chave do WPML.

O que você precisa verificar é que qualquer texto que seu tema adicione à saída seja traduzível. Por exemplo, os textos destacados nesta captura de tela deveriam ter sido envolvido em chamadas gettext.

Textos do tema
Textos do tema

Se você nunca usou GetText, saiba mais em nossas perguntas frequentes sobre tradução de textos do tema.

8. Traduzindo Widgets

O WPML deixa que os usuários traduzam os conteúdos de widgets de texto. Ele também traduz o título de todas as widgets. Se seu tema ou plugin cria suas próprias widgets, assegure-se que seus títulos passem pelos filtros padrão do WordPress. Desse modo, o WPML irá permitir que os usuários traduzam os títulos de seus widgets através da tela de Tradução de Strings.

9. Traduzindo o Rodapé

Esse tema tem uma tela administrativa personalizada para armazenar os textos de rodapés.

Textos de rodapé
Textos de rodapé

Assim como outros textos que vimos, o tema ou plugin salva os textos de rodapé na tabela wp_options. Vamos adicionar essas entradas ao arquivo de configuração de idiomas, dizendo ao WPML para traduzi-las.

10. Criando um Arquivo de Configuração de Idiomas para Seu Tema

Quando você concluir essas etapas, seu tema será totalmente compatível com o WPML. Você provavelmente irá querer facilitar a criação de sites multilíngues com o seu tema.

Crie um arquivo de configuração de idiomas e salve no diretório raiz de seu tema. O arquivo diz ao WPML quais tipos personalizados de posts, taxonomia, campos e opções são traduzíveis.

Esse pequeno arquivo XML irá economizar horas de seus clientes, permitindo que eles criem sites multilíngues sem esforço. Seus clientes farão tudo funcionar sem a necessidade de configurar o que deve ser traduzido. Isso ajudará você a economizar em suporte.

11. Suporte GetText para Strings no Código Fonte

Ainda que isso não seja especificamente relacionado ao WPML, você deve envolver todas as strings de seu tema em chamadas GetText. Isso significa que textos constantes irão aparecer no site usando o idioma correto. Você deve fazer isso tanto para textos de interfaces administrativas quanto para páginas do site.

Todos os plugins e temas do WordPress, prontos para uso multilíngue ou não, devem usar GetText para traduzir strings constantes. Os temas padrão do WordPress usam muito bem o GetText e são uma ótima referência, se você está começando.

Envolvendo os textos em chamadas GetText é um tema complicado por si só. Se você não está familiarizado, ou precisa de ajuda para depurar localização em seu código, dê uma olhada em:

Saiba que o WPML se integra completamente ao GetText. Uma vez que você envolveu as strings em chamadas GetText, você poderá traduzi-las diretamente do WordPress, usando a tela de Tradução de Strings do WPML. O WPML também pode exportar e importar arquivos .po, permitindo que você traduza todas as strings de seu tema de dentro do WordPress.

12. Dicas e Idéias para Depuração

Se você já sabe o básico sobre o WPML e está querendo tornar seu tema ou plugin compatível, dê uma olhada no guia para depuração de compatibilidade de temas. Você encontrará dicas e idéias sobre como facilmente tornar seu tema compatível com o WPML.

Se você precisar de ajuda, é só nos chamar. Vá até nosso fórum de suporte técnico, descreva o problema e vamos ajudá-lo rapidamente.