Quando um link normal é adicionado a uma página ou post, o WordPress salva o URL dessa página como o link. Isso significa que, se o URL mudar, o link é desfeito.

É fácil até demais mudar endereços de páginas no WordPress, o que resulta em links desfeitos (erro 404). Alguns exemplos de alterações que causam isso:

  • Mudar o pai da página;
  • Mudar o slug;
  • Mudar a estrutura de links permanentes do site.

O WPML impede que alterações nos URLs gerem links desfeitos. Quando você cria um link, o WPML automaticamente o torna adesivo. Em vez de armazenar o URL daquela página (quando da criação do link), o número da página é armazenado. Isso nunca muda, independentemente do que faça.

Então, quando a página é exibida, o WPML insere o link permanente da página de destino do link criado. Sempre que o URL mudar, todas as páginas ligadas a ele serão atualizadas imediatamente e seus links apontarão para o endereço correto.

A captura de tela abaixo mostra como os links internos ficam no banco de dados quando os links adesivos são habilitados:

Links tornados adesivos pelo WPML
Links tornados adesivos pelo WPML

Seus usuários nunca verão esses links “estranhos”. Em vez disso, o WPML os substituirá pelos links permanentes vigentes ao exibir as páginas.

Quando o módulo de links adesivos é habilitado, é possível controlar quais strings são controladas por ele. Para fazer isso, acesse a página WPML -> Links adesivos.

Links adesivos antes do processamento
Links adesivos antes do processamento

Por padrão, o WPML transformará em adesivos todos os links no corpo do post. Também é possível transformar em adesivos os links nos widgets e strings.

O WPML lhe permite substituir em lote todos os links normais por links adesivos. Além disso, ele o informará se houver links desfeitos e o ajudará a corrigi-los.

Se tiver habilitado os links adesivos depois de ter criado conteúdo, os links nesse conteúdo já existente não serão transformados em adesivos imediatamente.

A tela de administração de links adesivos mostra quanto conteúdo talvez inclua links normais (não adesivos). O WPML pode examinar esse conteúdo e converter todos os links em adesivos. Para fazer isso, clique no botão Analisar.

Sempre que quiser, poderá restaurar os links, tornando-os normais de novo (não adesivos). Para isso, clique em Reverter URLs adesivos para links permanentes.

Links para páginas em outro idioma

Pode ser que, de vez em quando, você queira inserir um link para uma página em outro idioma. Visto que o recurso de links adesivos ajusta os links automaticamente, ele talvez o impeça de fazer isso, ajustando o link para apontar para o mesmo idioma.

Para poder adicionar links para páginas em outros idiomas, é preciso adicionar o filtro a seguir no arquivo functions.php do tema.

Allow links to pages in other languages
add_filter( 'wpml_sl_blacklist_requests', 'wpml_sl_blacklist_requests', 10, 2 );

function wpml_sl_blacklist_requests( $blacklist, $sitepress ) {
    $blacklist[] = 'documentation';
    return $blacklist;
}

No código acima, use a matriz $blacklist para especificar todos os slugs de URL das páginas nos idiomas originais que deseja ter como destino dos links.

Em nosso exemplo, queremos como destino dos links as versões em inglês das páginas “Documentation” (cujo slug é “documentation”) e “Page Builders” (cujo slug é “page-builders”). Assim, usamos as duas linhas abaixo:

Example of specifying the list of URLs to allow linking to
$blacklist[] = 'documentation';

$blacklist[] = 'page-builders';