Je viens d’effectuer une jolie petite optimisation qui devrait bien alléger le serveur sur lequel nous tournons. Vous vous souvenez de l’article WordPress : réduire le nombre de requêtes SQL des thèmes, écrit il y a quelques mois ?

Et bien il se trouve que j’avais tout optimisé tous les fichiers de mon thème – sauf le menu du site qui se trouve dans le fichier header.php ! Ce dernier contenait quasiment une trentaine de requêtes SQL destinées à obtenir les permalinks des pages statiques… Je m’étais dit à l’époque que si je changeais le permalink d’une page, cela se reflèterait immédiatement dans le menu. Quand j’y pense aujourd’hui, c’est vraiment ridicule.

En plus, cela fait des années que je n’ai pas touché à ce menu. J’ai donc tout remplacé par une copie statique, ce qui m’a fait gagner entre 20 et 30 requêtes SQL à chaque chargement d’une page du site. C’est vraiment énorme et mon serveur SQL devrait enfin pouvoir respirer. Sur une journée avec 4 000 visites, cela fait quand même 120 000 requêtes économisées… je n’ose même pas calculer l’économie sur une année ! Il y a vraiment des fois où j’en mériterais une ou deux.

J’ai également re-compressé puis gzippé le code javascript et CSS de plusieurs plugins, ce qui devrait aussi améliorer le temps de chargement global.

Si vous avez trouvé une faute d’orthographe, veuillez nous en informer en sélectionnant le texte en question et en appuyant sur Ctrl + Entrée.

Articles en rapport:

9 Comments

  1. Matt

    36 requêtes ça va, tout dépend des plugins que tu utilises. Lorsque des plugins tente d’ajouter du code CSS, je le copie dans la CSS du thème et enlève la ligne du plugin qui l’injecte dans le header. Cela allège aussi les appels à différents fichiers.

    Je crois que par défaut, sans plugins, WordPress exécute une quinzaine de requêtes. Pour le menu, le mien ne va pas changer donc le laisser en dynamique n’apporte rien du tout. Plus c’est rapide et plus je suis content ^_^

  2. Avatar

    J’utilise Super-Cache, mais je l’ai vidé, j’ai vidé le cache de Firefox (et testé sous IE également)… J’ai actuellement 36 requêtes (0.247 secondes) sur ma page d’accueil et 44 sur un article (0.2448 secondes) J’ai également testé ta technique pour les menus, bon ça m’a fait gagné 3 requêtes ! lol Du coup je suis revenu au menu en php, car c’est quand même plus souple en dynamique…

  3. Matt

    @piechdibi : oui, c’est plutôt étrange ! Tu utilises un plugin de cache ? Est-ce que tu as vidé le cache de ton navigateur ? Combien de requêtes as-tu sur ta page d’accueil ? Et sur un article ?

  4. Avatar

    Merci beaucoup ! Bon je viens de suivre tes conseils et de modifier mon thème pour mettre les url en dur et non en allant chercher les infos sur ma base sql, et j’ai gagné… 0 requête !!! C’est dingue, non ?

  5. Matt

    Alors, j’ai 21 requêtes pour la page d’accueil (contre 50 avant) et 47 pour les articles seuls (l’augmentation des requêtes est due au plugin qui montre les articles en rapport avec l’article courant).

    Pour connaître le nombre de requêtes sur WordPress, il suffit d’ajouter :

    < ! --
     queries.
     seconds.
    -- >

    dans le fichier du thème que tu veux analyser (footer.php le plus souvent).

  6. Avatar

    Ah ben je viens de tomber sur ton article du 13 mai en cliquant de lien en lien sur les différents posts =D
    Petites questions subsidiaires : combien de requêtes as-tu aujourd’hui sur ton site, et quel outil utilises-tu pour les mesurer ?
    Merci Matt !

  7. Matt

    @Logales : é oué :-p

    @piechdibi : c’est très simple, tu peux compresser ta feuille CSS avec CSS Compressor et compresser ton code javascript avec The JavaScript CompressorRater, qui te permet d’obtenir la meilleure compression possible, avec plusieurs encodeurs différents.

    Une fois que le javascript est compressé, je le gzippe avec 7-Zip de manière à obtenir des fichiers .js.gz, lisibles par défaut avec tous les navigateurs. Je vous ferai un petit tuto un de ces quatre.

  8. Avatar

    roh la la gzippé le code javascript et css ! c’est du truc de pointe ça ! Et on apprend où à le faire ? ça pourrait m’intéresser ! ^^

Écrire un commentaire

Spelling error report

The following text will be sent to our editors: