Recevez les mises à jour gratuites du blog par Email : »» Garanti sans spam indésirable ««

Plugins pour réduire et mettre en cache les fichiers CSS d’un blog WordPress

de Greg le 13 décembre 2009

Rubrique : Web

  • De quoi on parle ici

– Le but de ce topic est bien entendu de vous permettre d’accélerer et d’optimiser votre blog ou site tournant sous WordPress. De nombreux blogs ont déjà expliqué l’utilité de cette préoccupation (confort mais aussi séduction des lecteurs et meilleur référencement -bientôt le moteur de recherche Google prendra en compte la réactivité des sites pour les placer dans son échelle de résultats).

  • Les règles de base

– Comme je le disais, donc, d’autres blogs ont déjà expliqué les règles de base mieux que je ne le ferais. Pour un résumé complet et efficace, je pense par exemple à ce topic : http://www.kuhm.fr/optimisations-referencement-google/optimiser-la-vitesse-chargement-dun-site-blog-wordpress-temps-de-chargement-reduit/ qui m’a beaucoup plu et qui me paraît complet.

– Pour résumer les chapitres de ce guide, voici ce que vous pouvez lire sur d’autres blogs pour optimiser la vitesse de chargement de WordPress, et ce sont en effet des choses à connaître même si elles ne sont pas systématiquement efficaces :

  1. Supprimer les Plugins indésirables
  2. Éliminer les balises PHP inutiles
  3. Utiliser le Plugin WP Super Cache
  4. Optimiser votre base de données
  5. Optimiser vos images
  6. Compresser vos CSS et JavaScript
  7. Désactiver le direct linking ou le hotlinking
  8. Supprimer les révisions des posts
  9. Eviter les plugins de statistiques WordPress

  • Alors quelle est l’utilité de cet article ?

  1. Je ne m’attaque pas ici à des généralités
  2. Je m’appuie uniquement sur 2 / 3 plugins triés sur le volet
  3. Les astuces que je vous présente ici sont peu connues
  4. Elles sont réellement efficaces et se suffisent à elles-mêmes
  5. Sans avoir besoin d’être hyper calé en programmation

Tout cela me paraît être une assez bonne introduction ma foi.

  • 1/ Réduire vos pages HTML de 10% et les mettre en cache statique en même temps à l’aide d’un seul plugin

- Minify est une application PHP5 qui combine plusieurs fichiers CSS ou Javascript, retire les espaces et commentaires superflus, les encode avec Gzip  et utilise un cache (requiert PHP 5.1.6) – Super ça nous aide à résoudre le point 6 des règles de base (voir ci-dessus) !

-  Super Cache est un plugin pour WordPress qui met les pages de votre blog dans un cache statique. Il génère des fichiers HTML sans aller chercher les scripts PHP – De quoi résoudre le point n° 3 des mêmes règles de base.

- la beauté de la chose est que Lyncd.com a réussi à combiner les deux programmes en un seul plugin à l’aide d’un petit mod dénommé WPSCMinify. Pour résumer, en compilant les deux, Super Cache sauvegarde les pages de votre blog par le biais de Minify, ce qui les rend plus petites. Les pages gzippées sont réduites de 5-10%, et les pages HTML simples sont réduites de 10-20%.

Votre cache est donc plus rapide. L’inconvénient est que pour l’instant, le mod WPSCMinify n’agit que sur les pages HTML et non pour le CSS / JS.

  • Mode d’emploi de WPSCMinify

  • Installez le pack Super-Cache+Minify+WPSCMinify ici sur le site de Lyncd.com.
  • On vous explique que vous pouvez aussi tout installer « à la main » séparément, mais les plugins précités possèdent différentes versions non compatibles entre elles et chez moi seul le package wp-super-cache-with-WPSCMin-0.3.tar.gz marche correctement.
  • Réglez Super-Cache comme vous le feriez normalement.
  • Dans les options de Super-Cache apparaît maintenant l’option supplémentaire : HTML Minify pour laquelle on vous demande un choix : « Enabled » ou « Disabled »

  • 2/ Augmenter le niveau de compression Gzip de Super-Cache

Lyncd.com, toujours lui, constate que Super-Cache utilise une compression Gzip de niveau  » 1  » alors que d’après ses calculs le niveau  » 6  » est beaucoup plus rentable si l’on prend en compte le ratio taux de compression / utilisation du CPU.

– Il explique comment effectuer ce réglage : Editer le fichier « wp-super-cache/wp-cache-phase2.php », remplacer la ligne
fputs($gz, gzencode( $store . '<!-- super cache gz -->', 1, FORCE_GZIP ) ); par
fputs($gz, gzencode( $store . '<!-- super cache gz -->'));
et la ligne
$gzdata = gzencode( $buffer . $log . "<!-- Compression = gzip -->", 1, FORCE_GZIP );
par
$gzdata = gzencode( $buffer . $log . "<!-- Compression = gzip -->");

– Bref il explique tout ça mieux que moi à cette adresse et offre même en téléchargement un patch correctif.

  • 3/ WP Widget Cache

– Pour en finir, j’ai également ajouté le plugin WP Widget Cache qui se pose en additif à Super-Cache : il ne le remplace mais le complète puisqu’il met en cache les widgets de vos sidebar, en vous laissant choisir la durée de cette mise en cache pour chaque widget (mettre zéro ou laisser vide pour indiquer que vous ne désirez aucune mise en cache sur un widget).

– Super-Cache n’agissant que sur les pages, cette extension possède son utilité, elle est censée faire baisser le nombre de requêtes HTTP.

  • Verdict

– Le pack Super-Cache+Minify est vraiment efficace et a immédiatement fait baisser ma note « Yslow » sous Firefox de « E » à « D ». Le temps de chargement des pages est également plus rapide d’une seconde, ce qui est représente un gain énorme.

– Pour l’instant le plugin WP Widget Cache peine un peu à me montrer toute sa valeur. Son utilité est peu perceptible pour l’instant, mais elle est proportionnelle au nombre de widgets utilisés.

Cet article a été écrit par :

– qui a déjà rédigé 395 posts sur Des Geeks et des lettres.

Webmestre et blogueur, Greg insuffle sa passion dans le blog que vous êtes en train de lire, une passion variée et engagée à l'image de la curiosité qui l'a toujours caractérisé : 1/ l'amour des mots, des livres, de la réflexion 2/ la curiosité numérique, la recherche et l'outil internet

Contacter l'auteur

Jetez aussi un oeil sur :

{ 6 commentaires… à vous de vous exprimer ! }

1 Mimie décembre 13, 2009 à 23 h 09 min

Merci c’est très clair et ce qui est le plus frappant c’est que tout tourne finalement autour du cache et de la réduction de la taille des fichiers qu’on met justement en cache (JS, CSS et HTML), ce qui sert finalement uniquement à réduire le nombre de requêtes HTTP faites au serveur qui est la cause du ralentissement des pages.
Ceci me rappelle deux de mes précédents articles : 2-facons-de-mettre-en-cache-le-javascript-css-et-image-simplement et css-sprites-une-technique-pour-accelerer-le-chargement-des-pages-web

Répondre

2 laure mai 3, 2010 à 18 h 17 min

Minify a mis mon blog en l’air, j’ai supprimé le plugin mais ça ne s’est pas remis. Au secours !

Répondre

3 Greg mai 3, 2010 à 21 h 17 min

à mon avis, Laure, la version de minify que tu as utilisé ne concorde pas avec ta version de wordpress… Si tu utilises le tout dernier Wordpress 2.9, minify n’est peut-être pas à jour… Au pire remet l’ancienne sauvegarde de ton blog.

Répondre

4 Laure mai 3, 2010 à 21 h 40 min

Merci Greg, mais je ne le remets pas car j’ai ça été la panique tout est rentré dans l’ordre maintenant ouf, ca fout les jetons quand même ! Oui je suis en version 2.9. Je préfère attendre qu’une version compatible de minify sorte. Merci d’avoir répondu !

Répondre

5 Greg mai 3, 2010 à 21 h 42 min

ouf, tant mieux pour le rentrage dans l’ordre :) bonne continuation !

Répondre

6 Daniel Roch décembre 10, 2010 à 14 h 03 min

Je suis étonné que le pack cité dans cet article ne permettent qu’un gain de temps de 1 seconde.

En utilisant sur mon blog Super Cache (avec Db Cache Reloaded en plus), j’accélère de près de 5 secondes mon temps de chargement.

Pour ceux que cela intéresse, j’ai d’ailleurs fais un test grandeur nature sur le cache de WordPress.

Répondre

Laissez un Commentaire

Article précédent:

Article suivant: