Qualquer site WordPress · WooCommerce · v0.11.0

Traduzir
uma vez. Servir
a partir de um ficheiro.

O conteúdo é traduzido em segundo plano no momento em que o publica. Os visitantes leem um dicionário compilado para um ficheiro, sem API no pedido e sem tradução acionada pelo tráfego.

/es/ Español /de/ Deutsch /fr/ Français /it/ Italiano /pt/ Português /nl/ Nederlands /pt-br/ Português do Brasil /ja/ 日本語 /sv/ Svenska /pl/ Polski
Qualquer site WordPress

Não só
para lojas.

O WooCommerce é opcional. Um blogue, um site empresarial, um portefólio ou uma loja: se funcionar em WordPress, é traduzido da mesma forma — em segundo plano e servido a partir de um ficheiro.

  • Blogs
  • Sites de empresas
  • Portfólios
  • Revistas
  • Páginas de destino
  • Lojas online

Páginas e publicações

Cada página e publicação, com as suas categorias e tags. Publique ou edite e o novo texto é traduzido poucos segundos depois.

  • en About us
  • es Sobre nosotros
  • de Über uns

Menus

O cabeçalho, o rodapé e cada menu criado em Aparência → Menus.

  • en Home Shop Contact
  • es Inicio Tienda Contacto
  • de Startseite Shop Kontakt

O seu tema

Botões, textos do cabeçalho e rodapé — lidos de uma página de cada modelo, para que as próprias palavras do tema também sejam cobertas.

  • en Read more
  • es Leer más
  • de Weiterlesen

Endereços

Todos os endereços no idioma do leitor — páginas, artigos, produtos, categorias e páginas de conta do WooCommerce. O endereço antigo redireciona com um 301, para que nenhuma ligação deixe de funcionar.

  • en /product/linen-blouse/ /my-account/orders/
  • es /es/producto/blusa-de-lino/ /es/mi-cuenta/pedidos/
  • de /de/produkt/leinenbluse/ /de/mein-konto/bestellungen/

SEO

hreflang em todas as páginas, e o endereço traduzido no URL canónico e em og:url, para que nenhuma tradução seja excluída como duplicada.

<link rel="canonical" href="https://example.com/es/sobre-nosotros/">
<link rel="alternate" hreflang="en" href="https://example.com/about-us/">
<link rel="alternate" hreflang="es" href="https://example.com/es/sobre-nosotros/">
<link rel="alternate" hreflang="de" href="https://example.com/de/ueber-uns/">
<meta property="og:url" content="https://example.com/es/sobre-nosotros/">

Pesquisa e datas

Um visitante que pesquisa na sua língua encontra resultados, e as datas seguem o formato próprio de cada língua.

  • en September 12, 2026
  • es 12 de septiembre de 2026
  • de 12. September 2026

Mapa do Site

Nenhum segundo sitemap para submeter. As páginas traduzidas são adicionadas ao sitemap que o Google já conhece — uma entrada por página e língua, cada uma listando todas as suas versões linguísticas. Sem um plugin SEO, o próprio sitemap do WordPress recebe um sitemap por língua.

<url>
  <loc>https://example.com/de/ueber-uns/</loc>
  <xhtml:link rel="alternate" hreflang="en" href="https://example.com/about-us/"/>
  <xhtml:link rel="alternate" hreflang="es" href="https://example.com/es/sobre-nosotros/"/>
  <xhtml:link rel="alternate" hreflang="de" href="https://example.com/de/ueber-uns/"/>
</url>

Cache da página

Cada língua é a sua própria URL, armazenada separadamente e purgada após cada tradução.

  • en /about-us/ Em cache
  • es /es/sobre-nosotros/ Em cache
  • de /de/ueber-uns/ Em cache
Funciona com

SEO e sitemaps

  • Yoast SEO
  • Rank Math
  • Slim SEO
  • Sitemap do WordPress
Funciona com

Cache da página

  • WP-Optimize
  • LiteSpeed Cache
  • WP Rocket
  • W3 Total Cache
Funciona com

Loja

  • WooCommerce
  • Pacotes de tradução oficiais do WordPress e WooCommerce
A correr WooCommerce? O carrinho, o checkout e os e-mails de pedido também são cobertos
Construído também para lojas

As partes
que outros deixam
em inglês.

O carrinho, o checkout e os avisos: precisamente onde uma string não traduzida causa mais problemas, no momento em que alguém está a gastar dinheiro. Abrangidos de três formas diferentes, porque provêm de três locais diferentes.

Carrinho e checkout

Coberto de três maneiras

Os rótulos vêm do pacote humano-revisado do WooCommerce. Os nomes de produtos e categorias vêm do dicionário, através da API da loja. Os nomes de envio e pagamento são coletados diretamente do WooCommerce.

Automático

E assim permanece

O que for publicado ou salvo é traduzido automaticamente. Todo o site é verificado novamente uma vez por semana e após cada atualização de tema ou plugin. Uma tradução revisada nunca é sobrescrita novamente pela máquina.

SEO

O sitemap que o Google conhece

Um endereço traduzido por idioma com hreflang alternativas, dentro do mapa do site WordPress, Yoast SEO, Rank Math ou Slim SEO. O endereço canónico aponta para o endereço traduzido, por isso nada é descartado como duplicado.

Strings

Revisão manual

Cada tradução listada com uma coluna "Onde" para contexto. Corrija uma e ela é sua para sempre. As strings com falha são marcadas e nunca bloqueiam o restante.

Modo de gravação

Captura o que um rastreio não consegue

Um carrinho com itens, um checkout a devolver erros, um cupão inválido. Navega como um admin com ?pht_record=1 e eles são gravados, sem custo para qualquer visitante.

Atualizações

Assinado, da PixelHunter

Novas versões aparecem em Plugins → Plugins Instalados como qualquer outro. Cada pacote é assinado com uma chave ed25519; um pacote trocado é recusado.

Cache da página

Purificado para você

Cada idioma é sua própria URL, portanto, qualquer cache a armazena separadamente. Após uma tradução, as páginas alteradas são purificadas no WP-Optimize, LiteSpeed Cache, WP Rocket e W3 Total Cache. Dois hooks cobrem o restante.

Pesquisar

Funciona em todos os idiomas

Um visitante que pesquisa por "Jacke" em alemão encontra "Jacket": o plugin procura o termo de origem. O tema e o motor de pesquisa nunca ficam a saber.

Glossário & tom

As suas palavras, a sua voz

Os nomes de marcas e termos fixos ficam como estão — uma regra por linha. Uma frase ou duas sobre o tom da marca viajam com cada pedido. Qualquer coisa dentro translate="no" ou <address> é deixada de lado.

E-mails de encomenda · WooCommerce

O e-mail chega no idioma do comprador.

Alguém compra em inglês. O WooCommerce envia "Your order has been paid" e o plugin envia-o em inglês: assunto, título, nomes dos produtos, método de envio e de pagamento, a data e o texto que escreveu para o rodapé. A encomenda em si é guardada no idioma da loja, para que a administração, as faturas e os relatórios estejam num só idioma.

O que a loja escreveuen · a loja
Subject: Your order #1042 has been paid
Your order has been paid

Hi Emma, thank you for your purchase. We are already preparing your order.

Linen midi dress — Black, M× 1€49.00
Silk blouse — Ivory, S× 2€78.00
Total€132.00
Shipping: Flat rate · €5.00Payment: Credit cardSeptember 12, 2026

Mariana Studio · 12 Flower Lane, Dublin · Reply to this email to reach us.

O que o comprador recebede · o comprador
Subject: Ihre Bestellung #1042 wurde bezahlt
Ihre Bestellung wurde bezahlt

Hallo Emma, vielen Dank für Ihren Einkauf. Wir bereiten Ihre Bestellung bereits vor.

Midikleid aus Leinen — Schwarz, M× 1€49.00
Seidenbluse — Elfenbein, S× 2€78.00
Gesamtsumme€132.00
Versand: Pauschal · €5.00Zahlung: Kreditkarte12. September 2026

Mariana Studio · 12 Flower Lane, Dublin · Antworten Sie auf diese E-Mail, um uns zu erreichen.

Todos os estados de encomenda
Processando Pago Concluído Reembolsado Nota da loja Tudo na língua do comprador E-mails do administrador · língua da loja

Cada e-mail após a compra

Pago, concluído, reembolsado, uma nota da loja — na língua da compra, do assunto ao rodapé.

As suas próprias palavras, traduzidas uma vez

Assunto, cabeçalho, conteúdo adicional e rodapé que escreveu no WooCommerce → E-mails passam pelo dicionário. Revise-os manualmente em Strings.

Etiquetas gratuitas, datas corretas

"Subtotal", "Envio", "Método de pagamento" vêm do pacote do WooCommerce revisto por humanos. A data usa o formato próprio de cada idioma — não aparece "9 de Setembro de 2026" numa página alemã.

A loja lê uma língua

As encomendas são guardadas na língua original com a língua da compra em _pht_lang. E-mails para o administrador permanecem na língua da loja.

O seletor de idiomas

Qualquer canto.
Quatro formas.

Nada para o tema combater. Quatro quilobytes de CSS, apenas nas páginas onde é apresentado. Três formas são simples ligações, sem JavaScript. As cores, o tamanho, os cantos e a sombra são definidos com uma pré-visualização em tempo real que avisa abaixo de 4.5:1, e cada valor é uma variável CSS, para que um tema possa redefini-lo sem !important.

AparênciaGuia de alternância
Caixa#ffffff
Idioma#1a1a1a
Atual#1a1a1a
Pairar#dcdcde
Tamanho do texto14px
Cantos8px
Sombrasuave
Contraste 16.1:1 — passa no WCAG AA. O painel alerta assim que uma cor de texto cai abaixo de 4.5:1.

Onde aparece

Modos
01Automático — flutua no canto que escolher, nada a tocar no tema. Também aparece no carrinho e no checkout, onde um visitante na língua errada precisa de uma forma de voltar.
02Manual — coloque-o você mesmo: o bloco Seletor de idioma (também dentro de um bloco de Navegação), um item Seletor de idioma em Aparência → Menus, [pht_switcher] ou pht_switcher(). O flutuante afasta-se nessa página; nunca há dois.
03Desativado — oculto. Nomes ou códigos, com ou sem bandeiras — apresentados na página, iguais no Windows — são um seletor de qualquer forma.

Barra de sugestões

Opcional
01Um visitante cujo navegador fala outra língua vê uma pequena barra no topo oferecendo a sua versão.
02Ela sugere, nunca redireciona. Redirecionar pela língua do navegador quebra o cache da página, e o Google aconselha contra isso.
03Aparece uma vez. Escolher ou fechar responde de forma definitiva. Em páginas traduzidas, a oferta do próprio navegador "Traduzir esta página" é silenciada — a deles em cima da nossa lê-se pior.
Como funciona

Uma
separação.

A tradução acontece em segundo plano. A disponibilização é apenas de leitura. É o modelo que a Shopify utiliza para o Translate & Adapt e o oposto dos plugins que traduzem HTML a pedido e voltam a cobrar por cada nova página que um visitante abre.

Tempo de tradução

Fundo
01O texto é lido diretamente da base de dados — produtos, categorias, páginas, menus, configurações da loja — além de uma página de cada modelo.
02Apenas o que falta vai para o serviço de tradução PixelHunter, vários lotes de uma só vez. Uma loja inteira leva menos de um minuto.
03O dicionário é compilado para um arquivo PHP dentro de uploads/. Um produto que publica é traduzido alguns segundos depois.

Tempo de serviço

Só leitura
01O prefixo do idioma e o endereço traduzido são trocados pelos de origem antes de o router do WordPress ser executado — /es/tienda/ é resolvido como /shop/. Sem regras de reescrita.
02O dicionário fica no OPcache. Servir uma página traduzida não custa uma consulta nem uma requisição HTTP.
03O HTML passa pelo núcleo WP_HTML_Processor. Com um dicionário vazio a saída é byte a byte a entrada.
custo = 38 ms + 0.12 ms × substituição linear · medido na página mais pesada de uma loja real · 262 KB · 719 substituições
Configuração

Quatro passos. Um botão.

Não é necessário configurar uma conta API e não há nada a configurar: a API de tradução possui a sua própria chave. Um glossário e um tom de marca são opcionais, nas Configurações.

1 Línguas

Escolha a origem, adicione os destinos

Cada língua de destino recebe o seu próprio prefixo de URL — /en/, /es/. O painel instala os pacotes de tradução do WordPress e WooCommerce em falta com um clique.

2 Licença

Cole o código

Melhor em wp-config.php como PHT_LICENSE_KEY: não na base de dados, não numa exportação, não editável a partir do admin. Uma chave serve todos os sites do seu plano.

3 Painel de controle

Traduzir o site

Um botão lê todo o site e envia o que está em falta, com uma barra de progresso. Feche a página — o restante continua em segundo plano.

4 Strings

Reveja o que importa

Filtrar por estado, pesquisar, corrigir manualmente. A partir daí, tudo o que publicar é traduzido automaticamente.

Comparar

Três formas de traduzir o WordPress.

O que muda entre traduzir manualmente, contratar um serviço de tradução e disponibilizar as suas próprias traduções a partir de um ficheiro.

Este plugin

PixelHunter Translate

Traduzido em segundo plano e disponibilizado a partir de um ficheiro no seu servidor.

O que paga Texto novo ou editado, uma vez por idioma. Cada visita é gratuita.
Onde ficam as traduções Num ficheiro no seu servidor
Se deixar de pagar Tudo o que já foi traduzido continua a funcionar
Velocidade 0 ms no idioma original; uma página traduzida não implica qualquer consulta nem pedido HTTP
WooCommerce Carrinho, checkout e e-mails de encomenda no idioma do comprador
SEO hreflang, mapa do site do seu plugin de SEO, endereços traduzidos
Como traduz Automaticamente, alguns segundos depois de publicar
Corrigir uma tradução Na própria página, num painel ao lado — ou na tabela Strings
Fora do WordPress Não — apenas WordPress

Plugin de tradução manual

Escreve cada idioma, página a página.

O que paga Uma licença, além do seu tempo ou de créditos de tradução
Onde ficam as traduções Na sua base de dados
Se deixar de pagar As traduções permanecem
Velocidade Como qualquer página do WordPress
WooCommerce Normalmente através de um módulo adicional
SEO hreflang e mapas do site, depois de configurados
Como traduz Por si, página a página, ou com créditos
Corrigir uma tradução No editor de artigos, um idioma de cada vez
Fora do WordPress Não

Serviço de tradução na nuvem

Um serviço traduz e disponibiliza as páginas por si.

O que paga Normalmente, uma subscrição dimensionada pelo número de palavras e idiomas
Onde ficam as traduções Nos servidores do fornecedor
Se deixar de pagar Normalmente, as traduções deixam de ser apresentadas
Velocidade Depende da rede do fornecedor
WooCommerce Depende do serviço
SEO hreflang através do serviço
Como traduz Automaticamente
Corrigir uma tradução No próprio painel do serviço
Fora do WordPress Sim, qualquer site

Uma comparação geral por tipo de ferramenta, não de um produto específico. Verificado em setembro de 2026.

Preços

Pague pelo texto.
Não pelo tráfego.

Cada visita é gratuita; apenas o texto novo ou editado é enviado para tradução. Cada carácter conta uma vez por idioma de destino e os caracteres não utilizados transitam enquanto a subscrição estiver ativa. Os planos anuais custam dez meses.

Período de faturamento
Moeda
Teste gratuito
Grátis
sem cartão, uma vez
30,000 caracteres, uma vez
1 site
Experimente gratuitamente
Iniciante
$€9/mês
cobrado mensalmente
$€90/ano
12 meses pelo preço de 10
300,000 caracteres por mês
1 site
3,600,000 caracteres por ano, todos no início
1 site
Subscrever Subscrever
Pro A maioria das lojas
$€19/mês
cobrado mensalmente
$€190/ano
12 meses pelo preço de 10
1,500,000 caracteres por mês
até 5 sites numa chave
18,000,000 caracteres por ano, todos no início
até 5 sites numa chave
Subscrever Subscrever
Agência
$€49/mês
cobrado mensalmente
$€490/ano
12 meses pelo preço de 10
6,000,000 caracteres por mês
até 25 sites numa chave
72,000,000 caracteres por ano, todos no início
até 25 sites numa chave
Subscrever Subscrever

O que utilizará o meu site?

caracteres; depois, apenas o que adicionar ou editar.

Parte dos caracteres de cada plano para um mês Parte dos caracteres de cada plano para o ano, todos no início

Teste gratuito mais adequado
Iniciante mais adequado
Pro mais adequado
Agência mais adequado

A opção mais adequada traduz tudo no primeiro mês. Nos meses seguintes, só utiliza texto novo ou editado.

A opção mais adequada cobre tudo no início: os 12 meses chegam de uma só vez. Depois disso, apenas texto novo ou editado.

Nenhum plano mensal faz isso num mês. Um plano anual faz — os seus 12 meses chegam no início. Ou a primeira tradução distribui-se por alguns meses: os caracteres não utilizados transitam.

Mais do que qualquer plano disponibiliza de uma só vez: a primeira tradução distribui-se ao longo do tempo e os caracteres não utilizados transitam.

Estimativas: um produto ≈ 1 250 caracteres, uma página com 1 000 palavras ≈ 6 000, o tema e os menus ≈ 10 000 uma vez. As visitas e as páginas inalteradas nunca contam.

Questões sobre impostos, como são contados os caracteres ou mudar de plano? Leia o guia de planos na documentação.

Respostas diretas

O que faz. O que não faz.

Configuração, SEO, a loja e a faturação: as perguntas que as pessoas fazem antes de instalar.

01

Preciso de uma conta API?

Não. O plugin apenas comunica com a API de tradução PixelHunter, que possui a sua própria chave — você só precisa da chave de licença.

02

Preciso de WooCommerce?

Não. WooCommerce é opcional: o plugin traduz qualquer site WordPress — páginas, publicações, menus, categorias e os textos do seu tema. Quando há uma loja, o carrinho, o checkout e os e-mails de pedido também são cobertos.

03

As páginas traduzidas estão no meu sitemap?

Sim. Não há um segundo sitemap a ser submetido: as páginas traduzidas são adicionadas ao que você já tem. Com o Yoast SEO, Rank Math ou Slim SEO, cada página recebe uma entrada por idioma, com todas as suas versões como hreflang alternates; sem um plugin SEO, o próprio sitemap do WordPress recebe um sitemap por idioma.

04

Com quais plugins funciona?

Yoast SEO, Rank Math e Slim SEO para canónicos e mapas do site; WP-Optimize, LiteSpeed Cache, WP Rocket e W3 Total Cache para limpar a cache das páginas; e WooCommerce, com os seus pacotes de tradução oficiais. Qualquer outra cache de páginas pode ser ligada através de dois hooks. As páginas criadas com Elementor, Breakdance, Oxygen, Bricks ou qualquer outro construtor, os campos ACF e os separadores de produtos personalizados também são traduzidos: o plugin lê a própria página.

05

Os slugs de URL são traduzidos?

Sim, em Definições → Endereços traduzidos: /product/linen-blouse/ torna-se /de/produkt/leinenbluse/. Um endereço é criado uma vez, a partir do título traduzido (ou do slug, quando foi escrito manualmente), e nunca muda por si só; o endereço de origem com o prefixo redireciona para ele com um 301, para que nenhuma ligação deixe de funcionar. Ativado em novas instalações; num site que seja atualizado, os endereços mantêm-se até o ativar.

06

Isso desacelera o meu site?

Na língua original, 0 ms. Nas páginas traduzidas, o dicionário é lido do OPcache; um cache de página hospedeira serve cada idioma uma vez por URL por TTL.

07

“Subtotal”, “Prosseguir para checkout”?

Eles vêm do pacote de tradução oficial do WooCommerce — revistos por humanos, sem custo de API. O painel indica quais pacotes estão em falta e instala-os.

08

Os e-mails para a loja mudam?

Não. Os e-mails para o administrador permanecem na língua da loja; apenas os e-mails do cliente são enviados na língua da compra.

09

Requisitos?

WordPress 6.7 ou posterior e PHP 8.1 ou posterior. Sem etapa de construção, sem jQuery, sem dependências em tempo de execução.

10

O que acontece quando os caracteres se esgotam?

A tradução é pausada e retomada de hora a hora. Nada se perde: os textos pendentes aguardam o período seguinte e o site continua a apresentar tudo o que já foi traduzido. Não tem de abrir o plugin para saber: aparece um aviso no topo do painel de administração do WordPress e é enviado um email para o email de administrador do site. Quando resta menos de 10% do plano, recebe primeiro um aviso e um email. Precisa de mais? Altere o plano em A minha conta: uma nova chave para o novo plano chega por email, e a tradução recomeça assim que é colada nos seus sites.

11

E se eu cancelar?

A chave funciona até ao fim do período pago. Depois disso, o site continua a servir todas as traduções que tem — apenas o novo texto deixa de ser traduzido.

12

A pré-produção conta como um site?

Sim. Traduzir no site em vivo, ou liberar um espaço em A minha conta → Ativações enquanto trabalha no texto. O teste gratuito é uma vez por site e não aceita emails descartáveis.

13

O que não é traduzido?

Código no interior <script> — os dados estruturados JSON-LD são a exceção e são traduzidos com a página — e emails de clientes não associados a uma encomenda, que são enviados no idioma da loja. Cada frase tem uma tradução em todo o site.

Para desenvolvedores

Três funções. Três filtros. Duas ações.

Língua atual
<?php if ( 'en' === pht_current_language() ) : ?>
  <p>Free shipping to the UK.</p>
<?php endif; ?>
Mudador, manualmente
[pht_switcher show_label="no" class="mine"]

<?php pht_switcher( [ 'style' => 'dropdown' ] ); ?>
Qualquer cache de página
add_action( 'pht_purge_urls', function ( $urls ) {
  foreach ( $urls as $url ) my_cache_purge( $url );
} );

Publicar.
Leia em
todas as línguas.

30.000 caracteres, um site, sem cartão. A chave chega por e-mail após a finalização da compra.