เราได้สังเกตเห็นการโหลดนานมากเมื่อไปแก้ไขโพสต์หรือหน้า เมื่อใช้ Query Monitor เราพบว่าแบบสอบถามหลัก WP นี้ใช้เวลานานถึง 15-20 วินาที
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()
เราใช้ postmeta เป็นจำนวนมากเนื่องจากหนึ่งในประเภทโพสต์ของเราใช้ฟิลด์ที่กำหนดเองประมาณ 20 รายการ ฉันอาจจะบอกว่าบางทีเราพึ่งพา postmeta มากเกินไป แต่นี่ดูเหมือนว่าเป็นคำถามที่ไม่มีประโยชน์มากเพราะเห็นว่ามันไม่ได้เลือก ID ของโพสต์
นี่เป็นปัญหาทั่วไปใช่ไหม มีวิธีปิดการใช้งานฟังก์ชั่นนี้ผ่านตัวกรองหรือไม่? ขอบคุณสำหรับการป้อนข้อมูลใด ๆ
meta_form()
ฟังก์ชั่นและนี่คือแบบสอบถาม SQL ที่สร้างขึ้นจากฟังก์ชันหลักนั้น คุณสามารถลองเพิ่ม metabox แบบกำหนดเองของคุณเองด้วยการแก้ไขโค้ดmeta_form()
และใช้แบบสอบถาม SQL ที่แนะนำของคุณ ฉันพบตั๋ว Trac # 8561 ที่ปิดนี้ คุณอาจสร้างตั๋วอีกใบหรือลองเปิดใหม่ PS: ขอให้สังเกตว่าหน้าหลักที่เลือก metabox ก็เป็นปัญหาเช่นกัน หากคุณมี 1 ล้านหน้าทั้งหมดจะปรากฏเป็นตัวเลือกที่เลือก!
meta_form()
ฟังก์ชั่นทั้งหมด ฉันอัปเดตคำตอบ - แบบสอบถามหลักของ SQL ได้รับการปรับปรุงใน WP เวอร์ชัน 4.3 คุณเห็นการเพิ่มประสิทธิภาพของแบบสอบถาม SQL ใหม่นี้เมื่อเปรียบเทียบกับpost_id
ข้อ จำกัดเพิ่มเติมของเราหรือไม่