O WPML lhe permite traduzir widgets com facilidade através da tela do String Translation. Para fazer isso, é necessário ter o módulo WPML String Translation instalado. O módulo está disponível no tipo de conta Multilingual CMS.

Veja as instruções no vídeo abaixo, ou leia as informações a seguir.

O WordPress vem com alguns widgets padrão, e o WPML os registra automaticamente para tradução assim que você instala o WPML String Translation.
Acesse a tela do String Translation e poderá ver todos os widgets padrão registrados sob o contexto “Widgets”, prontos para tradução.

Tradução de widget

Muitas vezes, temas e plugins oferecem widgets personalizados, ou você talvez programe os seus próprios. Se esse for o caso, notará que nem sempre esses widgets são registrados automaticamente para tradução; ou talvez apenas o título do widget seja registrado, mas os outros textos dele, não.

Títulos de widgets

Os títulos de widgets precisam passar por filtros para que o WPML os registre para tradução.
A programação fica assim:

function widget( $args, $instance ) {
 extract($args);
 $title = apply_filters( 'widget_title', empty($instance['title']) ? '' : $instance['title'], $instance );
}

Outros textos de widgets

Muitas vezes os widgets contêm outros campos de texto como áreas de texto ou campos de entrada. Há duas maneiras de informar o WPML da existência desses campos para registrá-los para tradução.

Registrar campos de widgets para tradução — método via programação

O método com o uso de programação é descrito em detalhes e com exemplos aqui.

O outro método, que não envolve programação, é descrito abaixo.

Registrar campos de widgets para tradução via String Translation

Um dos recursos avançados do String Translation é que ele permite aos administradores selecionar textos salvos na tabela de banco de dados wp-options e registrá-los para tradução. Visto que os widgets do WordPress salvam seus textos na tabela wp-options, isso quer dizer que o recurso também se aplica ao widget.

Tudo que você precisa fazer é acessar o String Translation e ir até a parte de baixo da página de configurações. Localize “Traduzir textos das telas administrativas” e clique no link.

Traduzir campos de widgets

Uma nova tela com opções exibidas em árvore aparecerá. Procure o widget e clique no nome dele para expandir seus campos.

Registrar textos de widgets para tradução

Habilite os textos que deseja registrar para tradução e clique em “Aplicar” na parte de baixo da tela.

Por fim, acesse a página principal de configurações do String Translation para traduzir o texto.