Configuração do WP STAGING e do WPML

Usas um Plugin multilingue de qualidade como o WPML, Weglott, Polyglot ou outro, e definiste as opções de idioma para usar pastas personalizadas com o código do idioma, por exemplo, yourdomain.com/en/?
Podes deparar-te com um problema em que abrir uma página no site de Staging resulta num erro 404. Isto pode acontecer se os permalinks do site de Staging estiverem desativados.

Opção 1: criar o site de Staging num subdomínio

Podes clonar o teu site WordPress para um subdomínio. Se o fizeres, deixas de ter problemas com a estrutura dos links, uma vez que a estrutura dos URLs imita a do site em produção.

Opção 2: alterar o formato de URL de idioma do WPML

Podes mudar as definições de idioma do WPML no teu site de Staging do WP STAGING para idioma baseado em URL como yourdomain.com/staging-site?lang=en

Podes alterar isto em WPML > Languages.

Nota: Se enviares o site de Staging de volta para produção, recomenda-se reverter esta definição no site de Staging antes de fazer o push, para evitar alterar a estrutura de permalinks no site em produção.

Opção 3: ativar permalinks por nome da publicação

Podes tentar ativar os permalinks por nome da publicação no site de Staging seguindo este artigo.

Opção 4: criar um site de Staging com domínios diferentes por idioma

Imagina que tens um site em produção com o domínio “example.com” para a versão inglesa, “example.fr” para a francesa e “example.de” para a alemã, e queres criar clones para staging.example.com, staging.example.fr e staging.example.de.

O que precisas de fazer é usar este excerto de código como mu-plugin (adapta-o aos teus domínios):

PHP
function wpstg_cloning_custom_params($args)
{
      $args['search_for'] = array_merge(
         $args['search_for'],
         ['example.fr', 'example.fr']
      );

      $args['replace_with'] = array_merge(
         $args['replace_with'],
         ['staging.example.fr', 'staging.example.de']
      );

      return $args;
}

add_filter('wpstg_clone_searchreplace_params', 'wpstg_cloning_custom_params'); 

De seguida, cria o teu site de Staging no subdomínio “staging.example.com” seguindo este guia. Claro, o subdomínio tem de ser criado primeiro através do painel de controlo do teu Hosting.

Não te esqueças de apontar estes novos subdomínios (staging.example.fr, staging.example.de) para o IP do site de Staging principal através do gestor de DNS do domínio.

Preservar a chave de licença do WPML após o push de um site de Staging para produção

Se queres preservar os dados de licença do WPML do site em produção tal como estão e não os sobrescrever com os dados do site de Staging após o processo de push, podes criar um ficheiro mu-plugin e adicionar este excerto de código:

PHP
<?php
/*
Plugin Name: mu-plugin to keep the WPML license of the live site
Description: After you push the staging site to the live site, the live site's WPML license won't change
Version: 1.0
Author: WPSTAGING
*/

function wpstg_push_preserve_options($options){
    $preserveOptions = ['wp_installer_settings'];
    return array_merge($options, $preserveOptions );
}
add_filter('wpstg_preserved_options','wpstg_push_preserve_options');

Depois envia o site de Staging para o site em produção e vais preservar a mesma chave de licença do WPML sem ser sobrescrita.

Opções de resolução de problemas do WPML

Depois de fazer push ou clonar o teu site WordPress com o WP STAGING, as traduções do WPML podem não funcionar como pretendido. Isto é causado frequentemente pela gestão de cache interna do WPML. Felizmente, o WPML oferece-te algumas opções poderosas de resolução de problemas para limpar e refrescar a cache do WPML.

As informações nesta página são para utilizadores avançados do WPML. Se tiveres dúvidas sobre o que fazer, contacta o suporte do WPML antes de executares qualquer opção de resolução de problemas.

Podes abrir a página de resolução de problemas do WPML a partir de WPML > Support.
Clica no link para troubleshooting.

How to access the WPML troubleshooting options
Como aceder às opções de resolução de problemas do WPML 

Cria um Backup do site WordPress antes de executar qualquer ação listada nessa página.

The WPML troubleshooting options page
A página de opções de resolução de problemas do WPML

Na tabela abaixo, vês uma descrição dos comandos mais importantes e possíveis cenários de uso:

Comando Quando usar
Limpar a cache do WPML
  • Se uma atribuição de tradução não estiver a funcionar.
  • Se tens deadlocks de base de dados relacionados com strings.
  • Se as strings não aparecem e recebes um erro como “WordPress database error Deadlock found when trying to get lock”. Isto acontece frequentemente após migração do ambiente local para produção. Tenta também reiniciar a transação para a query INSERT IGNORE INTO.
  • Problemas com o seletor de idioma.
Remover entradas fantasma das tabelas de tradução
  • Remove entradas da tabela WPML se não estiverem corretamente ligadas após upgrades ou correções de bugs.
  • Remoção de strings não utilizadas.
  • Ao receber erros durante o processo de mover produtos com estado Draft para o lixo.
Corrigir a collation de element_type
  • Usa se o conteúdo traduzido estiver em falta após a tradução.
  • Usa para corrigir erros como: “post_type is X but collation is Y”.
  • Se não consegues ver uma lista de publicações ou páginas após instalar o WPML.
  • Produtos não são listados para tradução no WooCommerce.
Corrigir a collation da tabela WPML
  • Se recebes erros relacionados com mistura ilegal de collations. Por exemplo, se recebes o erro “WordPress database error Illegal mix of collations utf8_general/utf8mb4”.
Definir informação de idioma
  • Se criaste conteúdo enquanto o WPML estava inativo, ou se outros Plugins criam conteúdo e contornam a API do WordPress, esse conteúdo pode não ter informação de idioma e não será apresentado em qualquer idioma. Esta ação resolve o problema.
  • Se as publicações traduzidas não estão ligadas à original.
Limpar e otimizar tabelas de strings
  • Usa apenas se tens um site traduzido com WPML anterior à versão 4.3. Usar este comando remove o conteúdo da tabela de cache de strings (_icl_strings_url e _icl_strings_pages) e otimiza a tabela icl_strings. Só vai funcionar quando todos os ficheiros MO estiverem corretamente criados. Noutras situações, podes carregar no botão mas nenhuma ação será desencadeada. Se o botão não funcionar vai a WPML → Theme and plugins localization e analisa os Themes e Plugins por ficheiros MO em falta.

Fonte:
https://wpml.org/documentation/support/wpml-troubleshooting-options/

Artigos relacionados

Updated on May 23, 2026

Rene Hermenau

Autor: Rene Hermenau

About the author: René Hermenau is the founder of WP STAGING. He works on WordPress backups, staging, migrations, database handling, and safe deployment workflows.