Bir yayını veya sayfayı düzenlerken çok uzun yükleme sürelerini fark ettik. Sorgu İzleyicisi'ni kullanarak, bu WP çekirdek sorgusunun 15-20 saniyeye kadar yükseldiğini tespit ettik.
SELECT meta_key
FROM wp_postmeta
GROUP BY meta_key
HAVING meta_key NOT LIKE '\\_%'
ORDER BY meta_key
LIMIT 30
caller:
meta_form()
post_custom_meta_box()
do_meta_boxes()
Yazı tiplerimizden biri yaklaşık 20 kadar özel alan kullandığından çok postmeta kullanıyoruz. Belki de postmeta'ya çok güveniyoruz diyebilirim, ama bu mesajın kimliğini bile seçmediğini görerek çok yetersiz bir sorgu gibi görünüyor.
Bu yaygın bir sorun mu? Bu işlevi bir filtre aracılığıyla devre dışı bırakmanın bir yolu var mı? Herhangi bir giriş için teşekkürler.
meta_form()
işlevi teslim ve bu gerçekten bu çekirdek işlev üretilen SQL sorgusu. Koddaki değişikliklerle kendi özel meta kutunuzu eklemeyi deneyebilir meta_form()
ve orada önerilen SQL sorgunuzu kullanabilirsiniz. 8561 numaralı kapalı trac biletini buldum . Belki başka bir bilet oluşturabilir veya yeniden açmayı deneyebilirsiniz? Not: Metabox'ı seçen üst sayfanın da sorunlu olduğuna dikkat edin. 1 milyon sayfanız varsa, hepsi belirli seçenekler olarak görünecektir!
meta_form()
fonksiyonun yerini alıyor gibi görünüyor . Cevabı güncelledim - çekirdek SQL sorgusu WP sürüm 4.3'te ayarlandı. Ek post_id
kısıtlamamızla karşılaştırıldığında bu yeni SQL sorgusunda herhangi bir performans kazancı görüyor musunuz ?