admin-ajax.php Nedir? Sunucu Yüküyle İlişkisi
- Yayınlandı:
- Son teknik kontrol:
Kısa cevap
wp-admin/admin-ajax.php, WordPress’in AJAX isteklerini karşılayan dosyasıdır: sayfa yenilenmeden sunucuyla veri alışverişi yapan eklentiler (sepet, form, filtre, canlı arama) buraya istek gönderir. Adında “admin” olsa da ön yüzde de kullanılır. Her istek WordPress’i baştan yükler ve sayfa önbelleğinden geçmez; bu yüzden sık çağrıldığında sunucu yükünün önemli bir kaynağı olabilir.
Önemli noktalar
- WordPress eklenti el kitabına göre tüm WordPress AJAX istekleri admin-ajax.php’ye gönderilir.
- Her istek tam bir WordPress yüklemesidir; önbelleğe alınmaz.
- Heartbeat API panel açıkken 15–120 saniyelik aralıklarla buraya istek gönderir.
- WordPress’in ürettiği varsayılan robots.txt, /wp-admin/ engellerken admin-ajax.php’ye izin verir.
Yükü hangi eklentinin yarattığını bulmak
Erişim günlüğüne bakın
admin-ajax.php’ye gelen POST isteklerinin sayısı ve zamanı, yükün ne kadarının buradan geldiğini gösterir.
Tarayıcının ağ sekmesini açın
Sayfada admin-ajax.php isteklerine tıklayın; gövdedeki action parametresi isteği hangi eklentinin yaptığını söyler.
Heartbeat’i ayırın
action=heartbeat olan istekler Heartbeat API’dendir. Panel sekmelerini açık bırakmak bu isteklerin sürmesine yol açar.
Sorumlu eklentiyi değerlendirin
Her sayfa açılışında istek yapan bir eklenti (ör. sepet parçası, canlı sayaç) varsa ayarlarından kapatın veya daha hafif bir alternatife geçin.
Yeni geliştirilen eklentiler aynı işi çoğunlukla REST API üzerinden yapar. Yük konusundaki genel adımlar için WooCommerce hızlandırma ve site hızlandırma rehberlerine bakın.