Parmi les bonnes pratiques à mettre place lors de l’optimisation du temps de chargement des pages d’un site Internet, on parle régulièrement de la « minification » des fichiers HTML, CSS et JavaScript.
La minification est une technique très simple : il s’agit de compresser au maximum un fichier pour réduire son poids. Pour cela, on supprime tous commentaires de code, les sauts de ligne et les espaces inutiles présents dans le fichier.
Pour minifier nos fichiers sans difficulté, il existe plusieurs plugins WordPress tels que WP Minify ou W3 Total Cache.
Pourtant, à l’aide de quelques lignes de code, il est possible d’optimiser le poids de nos fichiers sans plugin. Par exemple, pour réduire le poids des fichiers HTML d’un thème WordPress, copiez le code suivant dans le fichier functions.php présent à la racine de votre thème :
add_action('get_header', 'gkp_html_minify_start');
function gkp_html_minify_start(){
ob_start( 'gkp_html_minyfy_finish' );
}
function gkp_html_minyfy_finish( $html ){
// Suppression des commentaires HTML,
// sauf les commentaires conditionnels pour IE
$html = preg_replace('/<!--(?!s*(?:[if [^]]+]|!|>))(?:(?!-->).)*-->/s', '', $html);
// Suppression des espaces vides
$html = str_replace(array("\r\n", "\r", "\n", "\t"), '', $html);
while ( stristr($html, ' '))
$html = str_replace(' ', ' ', $html);
return $html;
}