คู่มือการเพิ่มความเร็วการโหลด WordPress หลายไซต์ในทางปฏิบัติ: การกำหนดค่า WPMU_OPTIONS และกลยุทธ์การแคช

อ่าน 3 นาที
2026-03-16
2026-06-03
2,073
I earn commissions when you shop through the links below, at no additional cost to you.

การวิเคราะห์ปัญหาคอขวดด้านประสิทธิภาพของเครือข่าย WordPress หลายไซต์

เครือข่าย WordPress หลายไซต์ให้ความสะดวกสบายอย่างมากในการจัดการเว็บไซต์หลายแห่ง แต่ในขณะเดียวกันก็ได้นำความท้าทายด้านประสิทธิภาพที่เป็นเอกลักษณ์มาใช้ เมื่อจำนวนไซต์ในเครือข่ายเพิ่มขึ้น การสอบถามฐานข้อมูล การแคชออบเจ็กต์ และการอ่านตัวเลือกทั่วทั้งเครือข่าย อาจกลายเป็นปัญหาคอขวดที่ทำให้ความเร็วในการโหลดลดลง โดยเฉพาะตารางตัวเลือกของเครือข่ายwp_sitemetaในwpmu_optionsการจัดการเป็นองค์ประกอบหลัก แต่มักถูกละเลย

ทุกครั้งที่โหลดหน้าเว็บ WordPress หลายไซต์จำเป็นต้องอ่านwpmu_optionsการตั้งค่าขอบเขตเครือข่ายใน WPMU_OPTIONS หากตัวเลือกเหล่านี้ไม่ถูกแคชอย่างถูกต้อง หรือมีข้อมูลที่ไม่จำเป็นจำนวนมากและข้อมูลที่ถูกทำให้เป็นลำดับอยู่ภายใน จะทำให้จำนวนการสืบค้นฐานข้อมูลเพิ่มขึ้นและเวลาตอบสนองช้าลง การลดลงของประสิทธิภาพแสดงให้เห็นในหลายด้าน: ประการแรกคือภาระของเซิร์ฟเวอร์ฐานข้อมูลเพิ่มขึ้น โดยมีการอ่านตารางเดียวกันบ่อยครั้ง; ประการที่สองคือ PHP ใช้ทรัพยากร CPU มากขึ้นในการประมวลผลข้อมูลที่ถูกทำให้เป็นลำดับ; และสุดท้ายคือค่าตัวเลือกขนาดใหญ่ใช้พื้นที่มากขึ้นในการส่งผ่านเครือข่ายและการจัดเก็บในหน่วยความจำ ซึ่งส่งผลต่อประสิทธิภาพของการแคช

การเข้าใจถึงลักษณะของคอขวดเหล่านี้เป็นขั้นตอนแรกในการเพิ่มประสิทธิภาพ การเพิ่มประสิทธิภาพไม่ใช่เพียงการติดตั้งปลั๊กอินแคชเท่านั้น แต่ยังต้องการการจัดการแบบบูรณาการในระดับฐานข้อมูล ระดับโค้ด และระดับสถาปัตยกรรม โดยเฉพาะอย่างยิ่งสำหรับสภาพแวดล้อมพิเศษเช่นหลายไซต์ที่ใช้ฐานข้อมูลและไฟล์หลักร่วมกัน

แนะนำให้อ่าน แผนการปรับแต่งเว็บไซต์ WordPress อย่างสมบูรณ์แบบ: คู่มือครอบคลุมทุกด้านตั้งแต่ความเร็วถึงอันดับการค้นหา

การทำความเข้าใจตาราง WPMU_OPTIONS และการกำหนดค่าหลักอย่างลึกซึ้ง

WPMU_OPTIONSเป็นตารางข้อมูลหลักที่เก็บการตั้งค่าขอบเขตเครือข่ายในเครือข่ายหลายไซต์ของ WordPress มันมีความสัมพันธ์กับwp_optionsฟังก์ชันตารางทำงานคล้ายกัน แต่ขอบเขตของมันคือเครือข่ายทั้งหมด การตั้งค่าทั้งหมดที่ส่งผลต่อทุกไซต์ในเครือข่าย เช่น รายการปลั๊กอินที่เปิดใช้งานเครือข่าย, ธีมเครือข่าย, การตั้งค่าการอัปโหลด, การตั้งค่าการลงทะเบียน ฯลฯ ถูกเก็บไว้ที่นี่

UltaHost WordPress โฮสติ้ง
การรับประกันคืนเงินภายใน 30 วัน, แบนด์วิธและฐานข้อมูลไม่จำกัด, การป้องกัน DDoS ฟรี, ซื้อ 3 ปีลดราคา 50%

โดยค่าเริ่มต้น WordPress จะดึงตัวเลือกเหล่านี้ผ่านget_site_option()ฟังก์ชัน ปัญหาคือ หากไม่มีการแคชวัตถุแบบถาวร (เช่น Memcached หรือ Redis) การเรียกใช้แต่ละครั้งของget_site_option()จะเป็นการสืบค้นฐานข้อมูลหนึ่งครั้ง สำหรับเครือข่ายมัลติไซต์ที่คับคั่ง อาจหมายถึงการเข้าถึงwp_sitemetaการสืบค้นของตาราง

กับดักประสิทธิภาพทั่วไปคือข้อมูลการจัดลำดับขนาดใหญ่ เมื่อนักพัฒนาจัดเก็บอาเรย์หรือออบเจ็กต์ขนาดใหญ่โดยใช้ฟังก์ชันupdate_site_option()จะถูกจัดลำดับและจัดเก็บในฐานข้อมูล การอ่านและยกเลิกการจัดลำดับข้อมูลขนาดใหญ่เหล่านี้บ่อยครั้งจะใช้ทรัพยากรจำนวนมาก ดังนั้น การเพิ่มประสิทธิภาพWPMU_OPTIONSอยู่ที่การลดการจัดเก็บข้อมูลที่ไม่จำเป็นและการนำแคชที่มีประสิทธิภาพมาใช้

การตรวจสอบและทำความสะอาดตัวเลือกเครือข่าย

ขั้นตอนแรกของการปรับปรุงคือการตรวจสอบว่าปัจจุบันwpmu_optionsตารางจัดเก็บเนื้อหาอะไรบ้าง คุณสามารถทำได้โดยการเรียกใช้คำสั่ง SQL บนฐานข้อมูล “ไซต์หลัก” ของเครือข่าย หรือใช้ปลั๊กอินจัดการหลายไซต์เฉพาะทาง

SELECT meta_key, LENGTH(meta_value) as value_size FROM wp_sitemeta ORDER BY value_size DESC LIMIT 20;

คำสั่ง SQL นี้จะแสดงรายการตัวเลือกเครือข่ายที่ใหญ่ที่สุด 20 รายการและขนาดของพวกมัน ช่วยให้คุณระบุได้ว่าอันไหนคือ “ผู้ใช้ข้อมูลหลัก” โดยทั่วไป ข้อมูลชั่วคราวที่หมดอายุ บันทึกที่ไม่ได้ทำความสะอาด หรืออาเรย์การตั้งค่าที่มีขนาดใหญ่เกินไปคือเป้าหมายหลักในการทำความสะอาด สำหรับตัวเลือกที่ยืนยันแล้วว่าไม่มีประโยชน์หรือหมดอายุ คุณสามารถใช้โค้ดตัวอย่างต่อไปนี้เพื่อทำความสะอาด:

แนะนำให้อ่าน คู่มือฉบับสมบูรณ์สำหรับการปรับปรุงความเร็วเว็บไซต์ WordPress: จากหลักการสู่การปฏิบัติ

// 谨慎操作:删除指定的网络选项
if (false !== get_site_option('some_large_temp_data')) {
    delete_site_option('some_large_temp_data');
}

การดำเนินการตรวจสอบและทำความสะอาดประเภทนี้อย่างสม่ำเสมอ สามารถช่วยรักษาwpmu_optionsตารางให้กระชับและมีประสิทธิภาพ

การปรับปรุงตรรกะการอ่าน-เขียนของตัวเลือกหลัก

สำหรับข้อมูลที่จำเป็นต้องจัดเก็บในwpmu_optionsข้อมูลในนั้น การเพิ่มประสิทธิภาพโหมดการอ่านและเขียนมีความสำคัญอย่างยิ่ง หลีกเลี่ยงการอัปเดตตัวเลือกทุกครั้งที่โหลดหน้าเว็บ เช่น ไม่ควรเขียนจำนวนนับแบบเรียลไทม์หรือข้อมูลชั่วคราวที่เปลี่ยนแปลงบ่อยโดยตรง ในทางกลับกัน ควรพิจารณาใช้แคชหน่วยความจำเป็นชั้นกลาง

สำหรับปลั๊กอินหรือธีมที่พัฒนาขึ้นเอง เมื่อบันทึกตัวเลือกเครือข่าย ควรใช้กลยุทธ์ “บันทึกตามความต้องการ” ก่อนเรียกใช้update_site_option()ควรใช้get_site_option()เพื่อรับค่าก่อนหน้า และดำเนินการอัปเดตเฉพาะเมื่อค่ามีการเปลี่ยนแปลงจริง ๆ ซึ่งสามารถลดการเขียนฐานข้อมูลที่ไม่จำเป็นได้

hosting.com 共享主机
高性能,配备 AMD EPYC CPU、NVMe SSD 存储和 LiteSpeed,全天候24小时、全天候的专家内部支持,高级安全措施,包括 SSL、暴力破解、恶意软件和 DDoS 防护,节省高达 73%
$old_value = get_site_option('my_network_setting');
$new_value = calculate_new_value();

if ($old_value !== $new_value) {
    update_site_option('my_network_setting', $new_value);
}

ดำเนินกลยุทธ์การแคชวัตถุที่มีประสิทธิภาพ

การแคชวัตถุเป็นรากฐานสำคัญในการเพิ่มประสิทธิภาพของ WordPress หลายไซต์ มันจัดเก็บผลลัพธ์การสืบค้นฐานข้อมูล การตอบสนองคำขอระยะไกล และผลลัพธ์การคำนวณที่ซับซ้อนในที่เก็บข้อมูลหน่วยความจำความเร็วสูง คำขอต่อมาจะอ่านจากหน่วยความจำโดยตรง ลดภาระฐานข้อมูลและเวลาในการประมวลผล PHP อย่างมาก

กำหนดค่าการแคชวัตถุแบบถาวร

WordPress รองรับแบ็กเอนด์การแคชวัตถุแบบถาวรหลายประเภท ที่ใช้บ่อยที่สุดคือ Memcached และ Redis สำหรับเครือข่ายหลายไซต์ เนื่องจากมีปริมาณข้อมูลมากขึ้นและมีไซต์มากขึ้น ประโยชน์ที่ได้จากการแคชแบบถาวรจะเด่นชัดกว่าไซต์เดียวอย่างมาก

ยกตัวอย่าง Redis คุณต้องติดตั้งบริการ Redis และส่วนขยาย PHP Redis บนเซิร์ฟเวอร์ จากนั้นในwp-config.phpไฟล์ เพิ่มการกำหนดค่าที่เกี่ยวข้อง สำหรับหลายไซต์ การกำหนดค่าที่สำคัญคือการใช้กลุ่มแคชส่วนกลางหรือตรรกะการสลับไซต์ เพื่อให้แน่ใจว่าคีย์แคชไม่ซ้ำกันในเครือข่าย และหลีกเลี่ยงการปนเปื้อนข้อมูลระหว่างไซต์ต่างๆ

แนะนำให้อ่าน วิธีปรับปรุงฐานข้อมูล WordPress เพื่อเพิ่มความเร็วในการโหลดเว็บไซต์อย่างมีนัยสำคัญ

// 在 wp-config.php 中配置Redis对象缓存
define('WP_REDIS_CLIENT', 'predis');
define('WP_REDIS_SCHEME', 'tcp');
define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);
// 对于多站点,建议添加一个前缀,或在代码中处理缓存组
define('WP_REDIS_PREFIX', 'my_network_');

หลังจากติดตั้งและเปิดใช้งานปลั๊กอินแคชอ็อบเจ็กต์ที่เกี่ยวข้อง (เช่น Redis Object Cache) แล้ว WordPress จะแคชผลลัพธ์การสืบค้นเช่นget_site_option()โดยอัตโนมัติ

การแคชการค้นหาเครือข่ายและข้อมูลชั่วคราว

นอกเหนือจากการแคชวัตถุหลักแล้ว WordPress Transients API เป็นเครื่องมือที่มีประสิทธิภาพสำหรับการพัฒนาหลายไซต์ ข้อมูลชั่วคราวคือข้อมูลที่ถูกแคชพร้อมกับเวลาหมดอายุ สำหรับข้อมูลที่ต้องคำนวณในขอบเขตเครือข่ายแต่ไม่ต้องการความสดใหม่สูงสุด ควรใช้เป็นอันดับแรกset_site_transient()get_site_transient()

โฮสติ้งแบบแชร์ของ InterServer
共享主机每月 $2.50 USD , 首月 $0.1 USD 优惠码 tryinterserver, 461个云应用脚本,一键安装。

ตัวอย่างเช่น การนับจำนวนผู้ใช้หรือไซต์ทั้งหมดในเครือข่ายเป็นกระบวนการที่ค่อนข้างใช้เวลา แต่ข้อมูลไม่จำเป็นต้องอัปเดตทุกวินาที คุณสามารถแคชไว้ได้หนึ่งชั่วโมง

function get_cached_network_site_count() {
    $count = get_site_transient('network_site_count');
    if (false === $count) {
        // 缓存不存在或已过期,执行数据库查询
        $count = get_blog_count(); // 假设这个函数较耗时
        // 缓存12小时
        set_site_transient('network_site_count', $count, 12 * HOUR_IN_SECONDS);
    }
    return $count;
}

สิ่งนี้ทำให้แน่ใจว่าการสืบค้นฐานข้อมูลที่ใช้ทรัพยากรสูงจะดำเนินการเพียงครั้งเดียวต่อชั่วโมง แทนที่จะดำเนินการทุกครั้งที่โหลดหน้าwpmu_optionsข้อมูลชั่วขณะใน (_site_transient_*) ควรได้รับการเร่งความเร็วโดยแบ็กเอนด์แคชอ็อบเจ็กต์ด้วย

การแคชขั้นสูงและการเพิ่มประสิทธิภาพระบบไฟล์

นอกเหนือจากแคชอ็อบเจ็กต์แล้ว การแคชระดับหน้าและการเพิ่มประสิทธิภาพระบบไฟล์ก็มีความสำคัญอย่างยิ่งต่อการเพิ่มความเร็วการโหลดหลายไซต์เช่นกัน กลยุทธ์เหล่านี้ช่วยลดเวลาในการตอบสนองของเซิร์ฟเวอร์และการใช้ทรัพยากรจากมุมมองที่แตกต่างกัน

การตั้งค่าการแคชหน้าเว็บที่รองรับหลายไซต์

การแคชหน้าเว็บ (Page Caching) จะจัดเก็บหน้า HTML ที่เรนเดอร์เสร็จแล้วทั้งหมด สำหรับผู้ใช้ที่ไม่ระบุตัวตนที่เข้ามาเยี่ยมชม จะส่งคืน HTML แบบคงที่โดยตรง ข้าม PHP และฐานข้อมูลไปโดยสิ้นเชิง ซึ่งช่วยเพิ่มความเร็วได้อย่างมากสำหรับหน้าที่เนื้อหาไม่เปลี่ยนแปลงบ่อยครั้ง (เช่น บทความ, หน้า)

สำหรับหลายไซต์ คุณต้องเลือกปลั๊กอินแคชที่รองรับการเปิดใช้งานผ่านเครือข่ายและการกำหนดค่าที่ระดับเครือข่าย เช่น WP Rocket (รุ่นพาณิชย์), W3 Total Cache หรือ Cache Enabler ในการกำหนดค่า ต้องระวังประเด็นต่อไปนี้: อย่างแรก ต้องแน่ใจว่าไดเรกทอรีแคช (เช่น/wp-content/cache/) สามารถเขียนได้และแยกออกจากกันอย่างชัดเจนสำหรับทุกไซต์ในเครือข่าย เพื่อหลีกเลี่ยงความขัดแย้ง อย่างที่สอง ตั้งค่าอายุการใช้งานของแคชอย่างเหมาะสม เพื่อสร้างสมดุลระหว่างประสิทธิภาพและความสดใหม่ของเนื้อหา อย่างที่สาม กำหนดกฎการวอร์มแคช (Preloading) ให้เหมาะสม เพื่อให้แน่ใจว่าเนื้อหาที่เผยแพร่ใหม่จะสามารถสร้างแคชได้ทันเวลา

บนเซิร์ฟเวอร์ Nginx คุณสามารถใช้กฎการแคชแบบสแตติกที่มีประสิทธิภาพมากขึ้นได้ นี่คือตัวอย่างโค้ดการกำหนดค่า Nginx ที่เรียบง่ายสำหรับการให้บริการไฟล์ HTML ที่แคชไว้โดยตรง:

set $cache_uri $request_uri;
if ($request_method = POST) { set $cache_uri 'nocache'; }
if ($query_string != "") { set $cache_uri 'nocache'; }
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|/wp-(app|cron|login|register|mail).php)") {
    set $cache_uri 'nocache';
}
# 检查缓存文件是否存在
if (-f "/path/to/wp-content/cache/page_${host}${cache_uri}index.html") {
    expires max;
    add_header X-Cache-Status "HIT";
    rewrite ^ /wp-content/cache/page_${host}${cache_uri}index.html break;
}

การเพิ่มประสิทธิภาพทรัพยากรแบบสแตติกและการจัดการไฟล์อัปโหลด

เครือข่ายหลายไซต์มักมีไฟล์สื่อจำนวนมหาศาล การเพิ่มประสิทธิภาพความเร็วในการโหลดสามารถปรับปรุงประสบการณ์ผู้ใช้ได้โดยตรง ขั้นแรก ตรวจสอบให้แน่ใจว่าทรัพยากรแบบสแตติก (CSS, JavaScript, รูปภาพ) ของทุกไซต์ถูกแจกจ่ายผ่าน CDN (เครือข่ายการกระจายเนื้อหา) ซึ่งสามารถทำได้ผ่านปลั๊กอินหรือการแก้ไขwp-config.phpและ URL ในไฟล์ธีม ตัวอย่างเช่น กำหนดค่าคงที่ CDN ที่ครอบคลุมทั้งเครือข่าย:

// 在 wp-config.php 中定义CDN域名
define('WP_CONTENT_URL', 'https://cdn.yourdomain.com/wp-content');

ประการที่สอง ปรับปรุงโครงสร้างการอัปโหลดไฟล์ เส้นทางการอัปโหลดเริ่มต้นสำหรับหลายเว็บไซต์คือ/wp-content/uploads/sites/{BLOG_ID}/ตรวจสอบให้แน่ใจว่าระบบไฟล์ของเซิร์ฟเวอร์มีประสิทธิภาพ (เช่น ใช้ SSD) และพิจารณาเชื่อมโยงไดเรกทอรีuploadsผ่าน symbolic link ไปยังพาร์ติชันจัดเก็บข้อมูลเฉพาะหรือที่เก็บวัตถุ (เช่น Amazon S3, Google Cloud Storage) เพื่อลดภาระ I/O ของเซิร์ฟเวอร์หลัก

สำหรับรูปภาพ ต้องใช้การโหลดแบบขี้เกียจ (Lazy Load) และรูปแบบรูปภาพรุ่นใหม่ (เช่น WebP) ปลั๊กอินแคชจำนวนมากหรือปลั๊กอินปรับแต่งรูปภาพเฉพาะทาง (เช่น ShortPixel, Imagify) รองรับการแปลงและปรับแต่งเป็นชุดในระดับเครือข่าย

สุดท้าย การบำรุงรักษาฐานข้อมูลเป็นประจำก็ไม่ควรละเลย การดำเนินการwp_sitemetawp_options(แต่ละไซต์) รวมถึงตารางหลักอย่างบทความ ความเห็น เป็นต้น ด้วยการปรับให้เหมาะสม (OPTIMIZE TABLE) และซ่อมแซมเป็นประจำ สามารถรักษาประสิทธิภาพการสอบถามฐานข้อมูลให้อยู่ในระดับที่ดีที่สุดได้ การผสานกับเครื่องมือตรวจสอบ (เช่น ปลั๊กอิน New Relic, Query Monitor) เพื่อติดตามตัวชี้วัดประสิทธิภาพอย่างต่อเนื่อง จึงจะสามารถดำเนินการปรับให้เหมาะสมได้อย่างตรงจุด

สรุป

การปรับให้เหมาะสมความเร็วในการโหลดของเครือข่าย WordPress หลายไซต์ เป็นระบบงานที่ต้องดำเนินการร่วมกันจากหลายระดับ ทั้งฐานข้อมูล รหัส แคช และโครงสร้างพื้นฐาน ใจความสำคัญอยู่ที่การทำความเข้าใจและปรับให้เหมาะสมwpmu_optionsกลไกการจัดเก็บและอ่านข้อมูล ผ่านการตรวจสอบและทำความสะอาด ลดทอนข้อมูลให้กระชับ และปรับตรรกะให้เหมาะสม เพื่อลดภาระของฐานข้อมูล บนพื้นฐานนี้ การบังคับใช้แคชวัตถุแบบถาวร (เช่น Redis) เป็นกุญแจสำคัญในการปลดล็อกประสิทธิภาพสูง ซึ่งสามารถเปลี่ยนการสอบถามตัวเลือกเครือข่ายที่เกิดขึ้นบ่อยครั้งเป็นการอ่านจากหน่วยความจำได้ นอกจากนี้ การผสานกับกลยุทธ์ขั้นสูงอย่างการแคชหน้า การกระจายเนื้อหาผ่าน CDN การปรับให้เหมาะสมระบบไฟล์ ฯลฯ สามารถสร้างโครงสร้างหลายไซต์ที่แข็งแกร่งและมีประสิทธิภาพสูงได้ โปรดจำไว้ว่า การตรวจสอบ การวัดผล และการทำซ้ำ เป็นกุญแจสำคัญในการรักษาประสิทธิภาพสูงอย่างต่อเนื่อง ไม่มีการกำหนดค่าที่ใช้ได้ตลอดไป มีเพียงกระบวนการปรับแต่งอย่างต่อเนื่องเท่านั้น

คำถามที่พบบ่อย (FAQ)

การปรับปรุง WPMU_OPTIONS จะส่งผลกระทบต่อการทำงานปกติของปลั๊กอินหรือไม่?

ไม่ ตราบใดที่การทำความสะอาดและการปรับปรุงของคุณอิงตามผลการตรวจสอบ และลบเฉพาะข้อมูลชั่วคราวที่ไม่มีประโยชน์อย่างชัดเจนหรือสร้างโดยปลั๊กอินของคุณเอง ก็จะไม่ส่งผลกระทบต่อฟังก์ชันหลักหรือปลั๊กอินอื่น แนะนำให้สำรองข้อมูลwp_sitemetaตารางอย่างสมบูรณ์ก่อนดำเนินการ และทดสอบในสภาพแวดล้อมทดสอบก่อน หลักการปรับปรุงคือ “ลบเฉพาะขยะ ไม่แตะต้องส่วนสำคัญ”

ควรเลือก Redis หรือ Memcached สำหรับแคชหลายไซต์อย่างไร?

ทั้งคู่เป็นแบ็กเอนด์แคชวัตถุแบบถาวรที่ยอดเยี่ยม Redis มีฟังก์ชันที่หลากหลายกว่า รองรับการเก็บข้อมูลถาวรลงดิสก์และโครงสร้างข้อมูลที่ซับซ้อนกว่า เหมาะสำหรับสถานการณ์ที่มีปริมาณข้อมูลมหาศาล ต้องการการเก็บข้อมูลถาวรหรือใช้ฟังก์ชันขั้นสูง Memcached ออกแบบให้เรียบง่ายกว่า อาจมีประสิทธิภาพในการจัดสรรหน่วยความจำบนเซิร์ฟเวอร์หลายคอร์สูงกว่า เป็นตัวเลือกคลาสสิกสำหรับแคชหน่วยความจำล้วนๆ สำหรับเครือข่ายหลายไซต์ส่วนใหญ่ หากเซิร์ฟเวอร์มีหน่วยความจำเพียงพอและไม่ต้องการการเก็บข้อมูลถาวรบนดิสก์ การเลือกอย่างใดอย่างหนึ่งสามารถเพิ่มประสิทธิภาพได้อย่างมาก สามารถเริ่มต้นด้วย Memcached เนื่องจากมีการกำหนดค่าที่ค่อนข้างง่ายกว่า

ปลั๊กอินแคชหน้าเว็บจำเป็นต้องกำหนดค่าแยกกันสำหรับแต่ละไซต์ในเครือข่ายหรือไม่?

ขึ้นอยู่กับปลั๊กอิน ปลั๊กอินแคชที่ยอดเยี่ยมและออกแบบมาสำหรับหลายไซต์ (เช่น W3 Total Cache) อนุญาตให้คุณกำหนดค่าแบบส่วนกลางในหน้าจอผู้ดูแลเครือข่าย และนำการกำหนดค่าเหล่านี้ไปใช้กับทุกไซต์ในเครือข่าย ในขณะเดียวกัน ก็อนุญาตให้ผู้ดูแลไซต์ย่อยสามารถแทนที่บางส่วนภายใต้กฎส่วนกลางได้ (เช่น การยกเว้นบางหน้า) เมื่อเลือกปลั๊กอิน โปรดตรวจสอบเอกสารประกอบว่ามีการระบุชัดเจนว่าสนับสนุนการกำหนดค่า “ทั่วทั้งเครือข่าย” หรือไม่

หลังจากเปิดใช้งานการแคชวัตถุแล้ว get_site_option ยังคงสอบถามฐานข้อมูลหรือไม่?

ใช่ แต่ความถี่จะลดลงอย่างมาก เมื่อแคชอ็อบเจ็กต์แบบถาวรถูกกำหนดค่าและทำงานอย่างถูกต้องget_site_option()ฟังก์ชันจะตรวจสอบก่อนว่าในแคชมีผลลัพธ์ที่ตรงกันหรือไม่ หากแคชถูกต้อง (HIT) ก็จะคืนค่าจากแคชทันที โดยไม่ต้องสืบค้นฐานข้อมูลเลย จะสืบค้นwp_sitemetaตารางก็ต่อเมื่อแคชไม่ถูกต้อง (MISS) หรือแคชหมดอายุเท่านั้น หลังจากสืบค้นเสร็จแล้ว ระบบจะเติมผลลัพธ์ใหม่ลงในแคชโดยอัตโนมัติ เพื่อให้คำขอต่อไปใช้งานได้ ดังนั้น การสืบค้นฐานข้อมูลจะเกิดขึ้นเฉพาะเมื่อแคชไม่ถูกต้องเท่านั้น