Documentação Universally

Guias passo a passo, dicas de SEO multilíngue e melhores práticas para ajudar você a traduzir e escalar seu site WordPress.

Traduzir conteúdo dinâmico e JavaScript

Universally traduz o HTML que seu servidor envia. Tudo o que estiver presente nessa resposta é traduzido, não importa o que o gerou. Conteúdo que um script busca e insere após a página ter sido carregada não está nessa resposta, então ele chega no idioma original.

O que isso cobre na prática

Traduzido, porque já está na página: conteúdo de um construtor de páginas, um modelo de tema, um shortcode, um framework renderizado no servidor ou uma consulta de CMS. Não importa que um construtor o gerou ou que a marcação seja incomum. Se estiver no HTML, será traduzido. Veja Construtores de páginas.

Não traduzido, porque chega depois: resultados de pesquisa buscados ao digitar, listas de produtos que recarregam quando um filtro muda, conteúdo do carrinho, comentários carregados ao rolar, qualquer coisa renderizada por um framework do lado do cliente no navegador em vez de no servidor.

O teste rápido. Visualize o código-fonte da página, em vez de usar o inspetor. O que você vê lá é o que o Universally vê. O inspetor mostra a página após a execução dos scripts, e é por isso que o texto pode parecer presente e ainda assim não ser traduzido.

Trabalhando com isso hoje

Renderize no servidor o que importa. Conteúdo que importa para SEO ou primeiras impressões é melhor renderizado no servidor de qualquer maneira. A maioria dos frameworks e construtores de páginas podem fazer isso, e ao fazê-lo, ele entra no escopo aqui ao mesmo tempo.

Envie as strings você mesmo. Para o texto da interface que seu front-end possui, /v1/translate/strings traduz uma lista de strings e as retorna com chave pelo idioma original, o que é adequado para rótulos, botões e estados que nunca tocam o servidor. Armazene o resultado em cache e reutilize-o. Veja Integrar usando a API.

Mantenha regiões dinâmicas fora do caminho. Se um widget for permanecer no idioma original, exclua-o para que não seja meio traduzido e confuso. Veja Incluir e excluir seletores CSS.

O que está por vir

A compatibilidade com conteúdo dinâmico está sendo expandida, então mais do que o que atualmente chega após o carregamento será tratado sem nenhum trabalho do seu lado. Não há data para citar.

Até lá, a API é a rota suportada para qualquer coisa que seu próprio código renderiza, e ela continua sendo a ferramenta certa onde você precisa de controle sobre exatamente quando uma string é traduzida.

Isso foi útil?