[WordCampParis 4] – Optimisation et performances de WordPress
Attention, cet article a été déplacé dans les archives, donc le contenu peut ne plus être à jour. A vous de voir 🙂
Au cours du WordCamp Paris #4, le premier atelier auquel j’ai assisté était consacré à l’optimisation de WordPress.
Voici donc mes notes, et pistes de réflexion, en vrac :
- Toujours commencer par afficher le nombre de requêtes en bas de vos thèmes. Pour ça, deux fonctions très simples : get_num_queries(); et timer_stop(1);
- De manière plus poussée, Vous pouvez également afficher les requêtes SQL dans votre footer.
- Cyril Pierre de Geyer, qui n’est pas expert WordPress mais expert PHP (sic) a d’ailleurs rappelé que MySQL avait des outils internes pour logger les requêtes lentes.
- Il est important de développer vos thèmes avec WP_DEBUG activé.
- Encore mieux, vous pouvez même avoir un log d’erreurs géré par WordPress en éditant votre /wp-config.php.
- Pour les développeurs, il est extrêmement important de connaître le core WordPress, afin de ne pas réinventer des fonctions déjà existantes.
- La méthode de cache interne et les Transients sont très intéressants pour optimiser vos sites à peu de frais.
- APC donne souvent un bon coup de pouce aux performances (actif sur Darklg Blog)
- Toujours sur l’idée de cache, WP Super Cache et consors ont été à nouveaux plébiscités
- Il a été rappelé que pour un site qui a besoin de faire du temps réel, un cache très court ( 10sec ou moins ) donne une impression de temps réel à vos utilisateurs en allégeant réellement la charge sur de gros trafics.
- Les cache de parties de page -ou cacheblocks- consistant à ne mettre en cache statique que le footer, et éventuellement à recharger le contenu interne via AJAX peut se révéler utile si le cache n’est pas possible
- Les Reverse-Proxies tels que Varnish ou CloudFlare (Vu chez Gonzague) peuvent également être d’une grande aide.
- Optimiser dès le départ est une règle clef. Penser son site pour qu’il tienne la charge.
- Tester et Monitorer son site : Apache Bench, Siege pour tester, Jmeter ou Pingdom pour monitorer.