ติดจรวดให้เว็บด้วย W3 Total Cache
บทความชุด : WordPress Cache Plugins

W3 Total Cache

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

Download

การติดตั้ง

ทำได้ด้วยการเสริชชื่อปลั๊กอินจากเมนู Plugins > Add New แล้วทำการติดตั้งปกติและ Activate ให้เรียบร้อย

instal1l

การตั้งค่า

ไปที่เมนู Performance > General Settings

performance-general-settings1

เสร็จแล้วเลื่อนลงมาที่กล่อง Page Cache

Page Cache

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

pagecache1

ดังนั้นให้เราทำการ Enable ตัวเลือกนี้ และเลือกแบบ Disk: Enhanced สำหรับเว็บแชร์โฮ้สต์ทั่วไป ตามคำแนะนำ

page-settings-disk11

Minify

คือการจัดการกับสคริปต์ต่างๆ เช่น Html, Css, JavaScript เช่นการย่นหรือปรับปรุงแท็กต่างๆ เพื่อให้ไฟล์มีขนาดเล็กลง จริงๆ จะข้ามส่วนนี้ไปเลยก็ได้ เพราะบางครั้งก็ทำให้ธีมแสดงผลผิดพลาดได้เช่นเดียวกันค่ะ ค่อนข้าง sensitive

minifi1

Browser Cache

(เราจะข้ามการ Enable ในส่วนของ Database กับ Object Cache เนื่องจากศึกษามาว่าไม่เหมาะสมกับ Share host ทั่วไปเท่าใดนัก หากใครต้องการตั้งค่าในส่วนนี้ ลองสอบถามกับผู้ให้บริการของท่านดู)

Browser Cache คือการสร้างแคชไฟล์ static ทั้งหลายที่ต้องโหลดเหมือนๆ กันทุกหน้า เช่น ไฟล์ Logo ไฟล์ script ต่างๆ ไฟล์ html เทมเพลตต่างๆ ไว้บนบราวเซอร์ ดังนั้นเมื่อผู้อ่านคลิกไปหน้าอื่นต่อไป บราวเซอร์ก็จะไม่ต้องเรียกจากเซิฟเวอร์อีกครั้ง เพราะไฟล์เหล่านี้ได้ถูกจดจำไว้บนบราวเซอร์เรียบร้อยแล้ว

browser-cache-setting1

ตรง Prevent caching of objects after settings change ไม่ต้องติ๊กก็ได้นะคะ จะมีการเติมสตริงเข้าไปที่ลิงค์ บางทีก็จะมีผลกับพวก lightbox ค่ะ

จากนั้นคลิก Save all settings

การตั้งค่าเพิ่มเติม

Page Cache

ไปที่เมนู Performance > Page Cache เพื่อตั้งค่า Page Cache

เราสามารถกำหนดค่าเพิ่มเติมได้ เช่น การกำหนดให้ไม่ต้องเสริฟแคชสำหรับ Login User หรือหากเว็บไหนมีผู้ใช้ที่ Login หลายตำแหน่ง เช่น มีนักเขียน (Author), Editor ก็สามารถคลิกเพิ่มได้

page-cache1

Cache Preload

ปกติแล้ว Cache จะถูกสร้างขึ้นหลังจากมีการเรียกหน้านั้น 1 ครั้ง (การสร้างแคชก็กินพื้นที่บนโฮ้สต์เช่นกัน) การสร้าง Preload นี้จะเป็นการสร้างแคชขึ้นไว้ให้พร้อมเสริฟ แทนการสร้างทีละหน้าหลังจากที่มีการเรียก โดยเราสามารถตั้งเวลาให้มีการ Update ใหม่เรื่อยๆ ได้ โดยสำหรับแชร์โฮ้สต์ทั่วไป อาจตั้งค่าไว้ที่ 3600 วินาที และ Pages per interval พอประมาณ เพื่อไม่ให้กินทรัพยากรสำหรับแชร์โฮ้สต์มากเกินไป

Sitemap URL คือ url ของ sitemap ที่สร้างเป็นไฟล์ xml โดยเราอาจใช้ปลั๊กอิน google xml sitemap ในการสร้างไว้ ระบบก็จะตามบันทึกที่ถูกสร้างขึ้นของหน้า sitemap เพื่อสร้างแคช

สุดท้ายด้านล่างคือ Preload the post cache upon publish events. คือให้มีการสร้าง Preload cache ใหม่เมื่อมีการ Publish หรือ Update โพส

preload1

Browser Cache

Performance > Browser Cache

เป็นการตั้งค่าเพิ่มเติมให้กับการแคชบนบราวเซอร์ สามารถเซ็ทได้ทุกข้อ แต่อาจยกเว้น 

browser-cache-setting1

เสร็จแล้วกด Save all settings

หมายเหตุ : หากในแต่ละขั้นตอนเจอข้อความแจ้งบอกว่าไม่สามารถเขียนไฟล์ .htaccess ได้ ให้เราทำการแก้ไขด้วยการ ftp เอง เราก็สามารถคลิกปุ่มให้โชว์ Show requied changes เพื่อแสดงโค้ดออกมา แล้วก็ก๊อปปี้โค้ดในช่องไปใส่ในไฟล์ .htaccess ตามคำแนะนำ โดยการใช้โปรแกรม filezilla

htacess-not-allow

 

add-htaccess1

หรืออีกวิธีหนึ่งง่ายๆ คือ การแก้ permission ไฟล์ .htaccess ให้เป็น 777 เสียก่อน เมื่อตั้งค่าเสร็จหมดแล้ว ก็ให้ไปแก้เป็น 644 กลับคืน เพื่อความปลอดภัย

777-htaccess1

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

emptie-all-cache1

หลังจากตั้งค่าทุกอย่างแล้ว เราสามารถทดลองดูการเปลี่ยนแปลงได้ โดยต้องทำการ Log out ออกจากการเป็น Admin ก่อนนะคะ เพราะ admin จะถูกละเว้นการแคชค่ะ

คำแนะนำสำหรับการถอนการติดตั้ง
ให้ทำการเปลี่ยน Permission ของทั้งโฟลเดอร์ wp-content และไฟล์ .htaccess เป็น 777 ก่อนสั่งถอนการติดตั้ง เพื่ออนุญาติให้ปลั๊กอินแก้ไขหรือลบไฟล์เองได้ จากนั้นจึงเปลี่ยน wp-content ไปเป็น 755 และ .htaccess เป็น 644 เช่นเดิมค่ะ

Credit : www.wpbeginner.com, www.wpexplorer.com