Comment trouver quel plugin utilise admin-ajax.php

Certains plugins tiers utilisent des requêtes AJAX afin de lancer une WP_query personnalisée et préparer ainsi le template WordPress pour l’afficher dans la page sans complètement la recharger, ce qui est la bonne méthode pour une page mise en cache.

Cette requête AJAX est envoyée a un fichier dédié à AJAX, qui se trouve ici : https://exemple.fr/wp-admin/admin-ajax.php

Mais parfois ces requêtes plombent littéralement votre temps de chargement, surtout quand elles sont plusieurs comme ici :

Trouver le(s) plugin(s) qui génère(nt) des requêtes AJAX

A

 Vous avez peu de plugins

Si vous utilisez peu de plugins alors vous pouvez procéder comme suit :

  1. Désactivez un premier plugin.
  2. Videz le cache de WP Rocket.
  3. Faites un test de votre site ici : https://tools.pingdom.com/
  4. Vérifiez si la requête admin-ajax.php est toujours présente.
  5. Si elle est toujours là, ré-activez votre plugin et retour à l'étape 1 avec le plugin suivant.
B

 Vous avez beaucoup de plugins

Si vous avez beaucoup de plugins - ou que vous ne souhaitez pas désactiver vos plugins - il va falloir passer par la console de Chrome.

  1. Ouvrez les outils de développement. Pour ce faire, vous pouvez soit cliquer sur le bouton droit de la souris et sélectionner dans le menu Inspecter, soit en haut de la fenêtre, aller dans l'onglet : Afficher → Options pour les développeurs → Outils de développement. 
  2. Rendez-vous sur l'onglet Network et rechargez votre page, vous devriez voir défiler le chargement de vos ressources comme ceci : 
  3. Rendez-vous en haut à gauche de la console dans le champs de recherche Filter (juste en dessous du point rouge) et entrez-y admin-ajax, la liste des coupables devrait s'afficher
  4. Sélectionnez ensuite celui qui vous intéresse et vérifiez ses informations comme ceci : 
  5. Un plugin laissant toujours des traces derrière lui, vous trouverez un indice vous indiquant de qui il s'agit. L'action ou le résultat comportent souvent les initiales ou une référence au plugin en question. Dans cette exemple nous retrouvons l'action "update_views_ajax" et "WPP" indiquant une requête Ajax du célèbre plugin WP Popular Posts.
  6. Testez si c'est effectivement lui en utilisant la méthode A si vous le souhaitez.

J'ai trouvé le(s) plugin(s) et après ?

Parfois la solution est d'activer une option du plugin évitant cette requête, si ce n'est pas le cas, vous pouvez prendre contact avec le développeur du plugin afin qu'il trouve un correctif permettant de réduire le temps de chargement de cette requête.