Come trovare il plugin che crea le richieste admin-ajax.php?

Alcuni plugin usano le richieste AJAX per lanciare delle wp_query personalizzate e farle comparire nella pagina senza che sia necessario un ri-caricamento completo della stessa: si tratta di un buon metodo per visualizzare del contenuto dinamico in una pagina in cache.

Questa richiesta AJAX viene poi inviata a un file AJAX WordPress dedicato:

https://example.com/wp-admin/admin-ajax.php

Ma a volte queste query aumentano significativamente il tempo di caricamento della pagina, specialmente quando ce ne sono diverse:

Trova i plugin che generano le richieste AJAX

A

 Quando hai pochi plugin

Se usi pochi plugin puoi agire così:

  1. Disattiva il primo plugin.
  2. Cancella la cache WP Rocket.
  3. Misura la velocità del tuo sito qui: https://tools.pingdom.com/
  4. Verifica se la query  admin-ajax.php è ancora lì.
  5. Se è ancora presente, riattiva il plugin e ripeti il procedimento dall'inizio con il plugin successivo della lista.
B

 Quando hai molti plugin

Se invece hai installato molti plugin - o non vuoi disattivarli come indicato nel punto precedente - dovrai usare la console di Chrome.

  1. Apri Developer Tools (Strumenti per sviluppatori). Lo puoi fare o con un clic destro del mouse e scegliendo Ispeziona Elemento, oppure vai su: Visualizza →Opzioni per sviluppatori→ Strumenti per sviluppatori.
  2. Fai clic sulla scheda Network e ricarica la tua pagina. Dovresti vedere le risorse che si caricano in questo modo:
  3. In alto a sinistra della console, vedrai il box Filter (giusto sotto il punto rosso) e scrivi admin-ajax : la lista dei colpevoli dovrebbe ora essere sotto ai tuoi occhi.
  4. Ora seleziona quella che vuoi identificare e verifica l'informazione dalla scheda Preview, in questo modo:
  5. Con questi dati, avrai già delle informazioni importanti sul plugin che sta generando la richiesta. L'azione o il risultato spesso includono le iniziali o altra referenza del plugin interessato. In questo esempio, abbiamo trovato la menzione "update_views_ajax" action e "WPP" il che indica una query AJAX da parte del plugin WP Popular Posts.
  6. Verifica che si tratti effettivamente del plugin identificato usando magari il metodo descritto nel metodo A.

E ora che hai trovato i(l) plugin, cosa succede?

A volte la soluzione consiste nell'attivare un'opzione del plugin "colpevole" per evitare la query AJAX; altrimenti puoi contattare chi ha sviluppato il plugin e chiedere una soluzione per ridurre il tempo di caricamento della query.