Guia de optimização do WordPress: Limpeza dos Headers

O WordPress é, para mim e para muitos, a melhor plataforma para se criar um blog. É fácil de utilizar, tem um interface limpo e é bastante modular permitindo usar um sem fim de plug-ins. No entanto isto tem um preço e o WordPress não é propriamente meigo a usar recursos e isto prejudica o desempenho de um blog. Mas é fácil melhorar a performance do seu blog equivalente a um pequeno utilitário para algo semelhante a um desportivo com um V8 debaixo do capot. Para ajudar nessa tarefa irei escrever uma série de guias para optimizar o WordPress ao máximo.

Wordpress

Atenção! Antes de efectuar qualquer destas alterações é altamente aconselhável efectuar um backup para poder ser reposto caso ocorra algum erro.

Tags estáticos

Dentro da pasta do nosso tema vamos abrir o ficheiro header.php. Este ficheiro possui, além do cabeçalho, vários meta-tags de informação sobre o nosso site. Como os temas são feitos para serem compatíveis com um variado número de instalações efectuam chamadas à base de dados para indicar atributos básicos como a codificação do nosso site. Como estes atributos não são alterados durante a utilização do blog podemos colocar o seu valor directamente no blog.

Vamos entrar então no nosso blog, verificar o seu código fonte e procurar a seguinte linha:

1
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Agora dentro do nosso ficheiro header.php vamos usar a linha que copiamos em cima para substituir a seguinte:

1
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />

Podemos fazer a mesma coisa para o ficheiro CSS, entramos no blog, verificamos o código fonte e procuramos a seguinte linha:

1
<link rel="stylesheet" href="http://dominio.com/wp-content/themes/xpto/style.css" type="text/css" media="screen" />

Novamente, no nosso ficheiro header.php vamos usar a linha que copiamos em cima para substituir a seguinte:

1
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />

Headers do WordPress

O WordPress, por defeito, coloca vários headers como a versão do WordPress, os links RSD entre outro “lixo” que muitos de nós não usamos ou nem sabemos para que servem. Aconselho a seguirem os próximos passos em modo trial and error, pois cada instalação é diferente e podem desactivar algo que necessitem para que o vosso blog ou tema funcione correctamente.

Estas alterações são efectuadas no ficheiro header.php e não no ficheiro functions.php do tema porque não queremos desactivar o jQuery na área de administração do WordPress, assim como outras funcionalidades.

Vamos então continuar a trabalhar no nosso ficheiro header.php e vamos procurar a seguinte linha:

1
<?php wp_head(); ?>

Todo o código indicado a seguir deve ser aplicado antes da função wp_head(). Para os que não estão familiarizados com o PHP o código deve encontra-se no ficheiro da seguinte maneira:

1
2
3
4
<?php
  // Código copiado é inserido nesta linha
  wp_head();
?>

jQuery e outros ficheiros JS

O jQuery é uma biblioteca de Javascript que ocupa cerca de 57Kb e que muitas vezes é incluída sem necessidade só porque activamos um plug-in mas não usamos o widget fornecido com esse plug-in. Para remover o ficheiro jQuery aplicamos a seguinte linha:

1
wp_deregister_script('jquery');

A partir da versão 3.1 passou a ser também incluído um ficheiro de localização (internacionalização) em JS. Podemos desactivar o mesmo com a seguinte linha:

1
wp_deregister_script('l10n');

Feed do blog

Tal como anteriormente fizemos nos tags estáticos, podemos inserir manualmente o link para o feed RSS do
nosso blog. Basta procurar a seguinte linha:

1
<link rel="alternate" type="application/rss+xml" title="Blog RSS Feed" href="http://blog.com/feed/" />

Agora basta colocá-la entre as tags <head>, por baixo da linha do CSS por exemplo. Depois colocamos a seguinte linha de código antes da função wp_head():

1
automatic_feed_links(false);

Podemos aproveitar também para remover os feeds extra de comentários, categorias e tags com o seguinte código:

1
remove_action('wp_head', 'feed_links_extra');

Serviços de publicação externa

Se apenas publicamos posts directamente através do painel de controlo do WordPress então podemos desactivar com segurança o link para o serviço RSD e o manifesto do Windows Live Writer com o seguinte código:

1
2
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');

Versão do WordPress

Esta tag deveria ser removida por defeito pois expõe a versão instalada do WordPress e em versões antigas pode permitir explorar possíveis falhas de segurança.

1
remove_action('wp_head', 'wp_generator');

Links de navegação

Deixo ao vosso inteiro critério a opção de remover ou não os links de navegação. Podem ser úteis para os utilizadores do Opera que usam essa funcionalidade ou para utilizadores com dificuldades para navegação mais simples, no entanto alguns links como os de arquivo podem ser extensos e aumentar ligeiramente o tamanho do blog.

1
2
3
4
5
6
remove_action('wp_head', 'index_rel_link');
remove_action('wp_head', 'parent_post_rel_link');
remove_action('wp_head', 'start_post_rel_link');
remove_action('wp_head', 'adjacent_posts_rel_link');
remove_action('wp_head', 'wp_get_archives');
remove_action('wp_head', 'wp_shortlink_wp_head');

 

Com estas pequenas alterações já será possível melhorar, ainda que ligeiramente, o desempenho do vosso WordPress.

 
Copyright © 1985 - 2017 Eduardo Maio. Alguns direitos reservados.
eduardomaio.net - Às vezes mais valia ser Agricultor do que Programador
Ao navegar no blog eduardomaio.net está a concordar com os termos legais e de privacidade.