- Status
- Resolvido
- Relatado para
- WPML Multilingual CMS 4.6.9
- Resolvido em
- WPML 4.9.3
- Tags de tópico
- Bug
Visão geral do problema
Em alguns casos, ao usar modelos de página personalizados, o modelo selecionado não é aplicado corretamente às páginas traduzidas.
Solução alternativa
Para garantir que o modelo de página personalizado seja aplicado corretamente à página traduzida, siga estas etapas:
- Exclua as entradas relevantes de ambas as tabelas
wp_postseicl_translations.
- Mude para o idioma secundário usando a barra superior do painel de administração, vá para Aparência > Editor, localize o modelo traduzido e exclua-o.
- Em WPML > Configurações > URL da página, ative “Traduzir” para a tradução de slug (isso garante que o slug do modelo seja incluído na tradução, em vez de ser gerado automaticamente a partir do título).
- Abra o arquivo: wp-content/plugins/sitepress-multilingual-cms/classes/full-site-editing/BlockTemplates.php
- Por volta da linha 56, comente a seguinte linha:
$postData['post_name'] = $post->post_name;
- Reenvie o modelo para tradução.
- Ao traduzir o modelo, certifique-se de que o slug esteja correto e inclua o slug da página traduzida ou da taxonomia.
Cenário de caso extremo
Existe uma sequência específica na qual uma página traduzida pode não ser associada ao modelo traduzido:
- Quando você cria um novo modelo personalizado diretamente ao criar uma nova página (selecionando “Modelo > Criar um novo modelo” na barra lateral direita), tanto a página quanto o seu modelo são publicados simultaneamente.
- Se a tradução automática (“Traduzir tudo”) estiver ativada, o WPML envia tanto a página quanto o modelo para tradução ao mesmo tempo.
- Se a tradução da página for concluída antes da tradução do modelo, o modelo traduzido ainda não existirá para ser atribuído. Portanto, a página traduzida acaba ficando com o modelo padrão.
- Para resolver isso, assim que a tradução do modelo for concluída e publicada, reenvie a página traduzida para tradução para que ela receba corretamente o modelo recém-traduzido.