WordPress : réduire le nombre de requêtes SQL des plugins

Plugins

Suite aux deux précédents avertissements de mon hébergeur, j’ai pris quelques mesures pour tenter d’endiguer les requêtes superflues au niveau du serveur et d’optimiser mon installation WordPress en général. Aujourd’hui, on essaie de réduire le nombre de requêtes SQL de nos plugins.

Etape 1 : réduire le nombre de plugins

Une installation par défaut de WordPress est assez light au niveau des ressources SQL. Le problème, c’est que l’on a bien souvent tendance à ajouter des plugins à son installation de base qui finissent par ralentir l’ensemble du site. Peut-être même possédez-vous des plugins qui sont devenus obsolètes ou redondants s’ils ont été inclus dans le code source de WordPress. Faîtes un peu le ménage et supprimez les plugins dont vous ne vous servez pas.

Etape 2 : réduire le nombre d’accès à la base de données

Les plugins WordPress étant écrits par différents auteurs – merci la communauté du libre ! – il est possible que certains d’entre eux ne soient pas vraiment (voire du tout) optimisés.

Pas de SELECT *

Un exemple tout simple, on ne devrait jamais voir de requêtes telles que :

SELECT * FROM $wpdb->users WHERE user_login='$wpusername' LIMIT 1Code language: PHP (php)

Il est inutile de sélectionner l’ensemble des données de la table si l’on a juste besoin de quelques champs :

SELECT display_name, user_url FROM $wpdb->users WHERE user_login='$wpusername' LIMIT 1Code language: PHP (php)

Pas de COUNT(*)

Mauvaise pratique :

SELECT COUNT(*) FROM user_online

Meilleure pratique, utilisation d’une colonne indexée donc gain de temps puisque l’on ne parcourt pas toute la base :

SELECT COUNT(ac_id) FROM user_online

Etape 3 : installer un plugin de cache

Je vous prépare cela pour un futur tutoriel.

Recherchez-vous un expert WordPress ou WooCommerce sur qui vous pouvez compter? Ne cherchez plus.

Faites confiance à mon expertise »

Matt

Matt Biscay est développeur WordPress et WooCommerce certifié chez Codeable, ainsi que sysadmin qualifié et enseignant-chercheur. Passionné par le code performant et les solutions sécurisées, je m'efforce d'offrir une expérience utilisateur exceptionnelle sur chaque projet.

Vous avez aimé cet article ? Vous avez un projet en tête et vous pensez que je pourrais vous aider à le concrétiser ? N'hésitez pas à me contacter, je serais ravi de discuter avec vous de votre projet !

Opinions