Início » Infra para WordPress » Como Reescrever URLs no WordPress 4.4
Infra para WordPress

Como Reescrever URLs no WordPress 4.4

Neste artigo, você descobrirá como usar a API Rewrite Rule do WordPress para criar seus próprios links exclusivos em seu site e deixar as urls amigáveis.
dezembro de 2015 /4 min de leitura
Conteúdo escrito por humano

Neste artigo, você descobrirá como usar  a API Rewrite Rule do WordPress para criar seus próprios links exclusivos para o seu site. O WordPress já usa essa funcionalidade quando você seleciona uma nova estrutura permalink para reescrever urls no WordPress.

O que é Rewriting?

Reescrita de URL é quando você muda o conteúdo que é exibido pelo servidor. Normalmente, quando você digitar uma URL no servidor web simplesmente irá procurar todos os arquivos nesse local. Mas com o Rewriting você pode mostrar a mesma URL, mas mudando no back-end onde o servidor vai procurar o conteúdo. Portanto, podemos ter uma URL de /seu-site-1/, mas dizer ao servidor para exibir o conteúdo que está localizado em /seu-site-1/wp-content/themes/seu-tema/index.php.

Como o WordPress usa o Rewrite Rule para personalizar suas urls?

Quando você for em “Configurações –> Permalinks”, você terá de escolher como quer que suas URLs apareçam no WordPress. Tem muitas opções diferentes para escolher. O padrão que o WordPress vai usar é “?p={post_id}”, este é o valor que é armazenado na tabela wp_posts em que a API de reescrita de urls vai escrever. Quando você selecionar uma nova estrutura permalink, irá armazená-las na tabela de wp_options. Isto significa que nós podemos ter URLs com apenas o título do post e o WordPress vai saber que será preciso procurar na coluna post_name para encontrar o post correto para exibir.

wordpress-permalinks

Alterando as urls você terá resultados como este a seguir.

http://www.seu-site.com/?p=1
para
http://www.seu-site.com/titulo-do-post

Existem dois principais benefícios de mudar a estrutura de URL. Uma delas é por razões de SEO, com palavras-chave na URL para dar um impulso nos rankings. Outra vantagem é que é mais amigável para o usuário clicar em um link com palavras-chave na URL.

E como o WordPress faz isso?

Quando você alterar a estrutura permalink do WordPress ele vai fazer uma mudança no arquivo .htaccess que irá enviar todo o tráfego do site para o arquivo index.php. Se você abrir o seu arquivo .htaccess você vai ver algo semelhante a isto.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

E no arquivo index.php é onde serão feitas algumas verificações para saber qual é o arquivo correto a ser entregue ao usuário. Isso funcionará muito bem se você quiser usar as configurações padrão em seu site. Caso você decida criar suas próprias regras personalizadas você precisa usar a função add_rewrite_rules() para criar um novo regex padrão de como reescrever suas páginas .

Crie suas próprias regras de reescrita de url no WordPress

function custom_rewrite_basic()
{
add_rewrite_rule(
‘^leaf/([0-9]+)/?’,
‘index.php?page_id=$matches[1]’,
‘top’
);
}
add_action( ‘init’,  ‘custom_rewrite_basic’ );

NOTA: Quando você utilizar $matches[] para recuperar os valores de uma URL correspondente, os dados de captura de grupo começa em 1, não 0.

IMPORTANTE: Não se esqueça de limpar e regenerar os permalinks depois de modificar as regras de reescrita. Caso contrário, às vezes você poderá  ter problemas no WordPress retornando uma página 404 para seus posts e isso porque você esqueceu de atualizar os permalinks. Na administração do WordPress, selecione Configurações -> Permalinks e apenas clique em salvar alterações sem quaisquer alterações. Agora, você pode acessar a mesma página que http://meu-site.com/leaf/95.

Você pode saber mais acessando o link a seguir. https://codex.wordpress.org/Rewrite_API/add_rewrite_rule

Saiba tudo sobre a versão 4.4 do WordPress

Qual nota você da para este artigo?
Ruim

O que você achou disso?

Clique nas estrelas

Média da classificação 0 / 5. Número de votos: 0

Nenhum voto até agora! Seja o primeiro a avaliar este post.

Excelente
Artigos Relacionados

  1. Rodrigo Vieira Eufrasio da Silva
    Muito bom seu artigo Victor, concordo realmente contigo sobre os dois principais benefícios da escritas de URls, pois iss é fundamental dentro dos processos de um projeto em WordPress.

Construa seu site WordPress sob medida com os maiores especialistas em WordPress da America Latina
Conheça a Apiki

Faça um comentário
Cadastre-se rápido

Fazer Login