หลังจากลอง plugin cache ของค่ายต่างๆ มาแล้ว พบปัญหาว่า cache ไม่ยอม update
พอเขียนบทความใหม่ เว็บกลับไม่ยอม update ต่อให้ deactivate plugin แล้ว เปลี่ยน .htaccess ก็แล้ว เคลียร์คุกกี้ก็แล้ว หน้าใหม่ก็ยังไม่ปรากฏ
แถมบางเรื่องอยากให้มัน update บ่อยๆ ก็ไม่รู้จะตั้งเวลาอะไรยังไงดี ไล่เมนูของปลั๊กอินอย่างงงๆ อันไหนงานหนักๆ งานเบาๆ plugin พวกนั้นแยกไม่ออก
เลยหันมาใช้ cache แบบแมนน่วลเขียนเองดีกว่า นั่นคือหากคิดว่าหน้าไหน หรือโค้ดช่วงไหน บรรทัดไหน ทำงานหนัก ก็จัดการครอบมันซะ
ตัวอย่างเอามาจากเว็บที่หาเจอ คือลักษณะนี้
ครอบหัว
<? $cacheFile = MY_CACHEPATH.’footer_manu.cache';
$gencache = true;
if(file_exists($cacheFile)) {
$gencache = false;
$nTime = $_SERVER[‘REQUEST_TIME’] – 7200;
$cTime = filemtime($cacheFile);
if($nTime > $cTime)
{
$gencache = true;
}else
{
include $cacheFile;
}
}
if($gencache)
{
ob_start();
?>
แล้วก็ครอบท้าย
<?
$fp = fopen($cacheFile, ‘w+’);
fwrite($fp, ob_get_contents());
fclose($fp);
ob_end_flush();
}
?>
ลดภาระ server ช่วง traffic เยอะๆ จาก load average ที่ 10 - 15 เหลือ 2 - 4 ได้ทันที แนะนำเลยครับสำหรับโปรแกรมเมอร์ทั้งหลาย ถ้าแบบว่าลอง cache plugin แล้วยังไม่หนำใจ
หมายเหต วิธีนี้เป็น disk cache เท่านั้น เลยอาจจะสู้บาง plugin ไม่ได้
ที่มาของตัวอย่าง
http://gethitech.com/manual-ca...-for-wordpress-without-plugin/ ซึ่งอธิบายไว้ละเอียดแล้วครับ
** แก้ไขเพราะไปโดนปุ่ม submit