Cache ในเวิร์ดเพรส ด้วย WP Super Cache

ปกติแล้วบล็อกของผมนั้นไม่ได้เปิดใช้งานระบบแคชครับ  เนื่องจากผมเห็นว่าเว็บมันไม่ได้โหลดหนักอะไรอยู่แล้ว (คนเข้าก็ไม่เยอะครับ 55) เลยไม่ได้สนใจจะเปิด  แต่คืนนี้นั่งน้ำมูกไหลอยู่เพลินๆ เลยลองทำแคชเล่นดู  ก็เห็นตัวเลขน่าสนใจเหมือนกัน  เลยลองเอามาแชร์กันครับ

ผมทดสอบความเร็วการเข้าเว็บด้วย http://webwait.com/ ครับ  ผมเข้าใจว่ามันวัดจากเน็ตเรานี่แหละ  โดยเมื่อปิดใช้งานแคช  บล็อกนี้จะใช้เวลาเข้าถึงเฉลี่ยประมาณ 1.2 วินาที ตามภาพนี้

การเข้าถึงโดยไม่มีแคช

การเข้าถึงโดยไม่มีแคช

จริงๆ มันก็จัดว่าต่ำอยู่แล้ว (ก็บล็อกมันไม่ได้โหลดหนักอะไรนี่เนอะ) แต่เพื่อความสนุกส่วนตัว  เลยจะลองเปิดใช้งาน Cache ดูครับ

Read More

รู้จักกับ Child Theme ใน WordPress

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

Child Theme ในเวิร์ดเพรส

ในเวิร์ดเพรส  เราสามารถสร้างธีมลูก (หรือ Child Theme) ให้กับธีมใดๆ ก็ได้  โดยธีมลูกนั้นจะคล้ายๆ กับการเขียนคลาสใหม่ที่ขยายคลาสเดิมใน PHP  คือเมื่อเราเปิดใช้ธีมลูกแล้ว  ในขั้นตอนการหาไฟล์ Template ตาม Hierarchy ของเวิร์ดเพรส  ตัวเวิร์ดเพรสจะมองหาไฟล์เท็มเพลตในธีมลูกก่อน  หากไม่เจอจึงจะไปหาเอาในธีมหลัก

ตัวอย่างเช่นเราต้องการแก้ไขหน้าตาของ single.php (หน้าแสดงโพสต์) เราก็จัดการสร้างธีมลูกขึ้นมา  และสร้างไฟล์ single.php ขึ้นมา  และปรับแต่งหน้าตาใดๆ ให้เรียบร้อยตามต้องการ  เมื่อเวิร์ดเพรสมองหาเท็มเพลท single.php มันจะไปมองหา single.php ในธีมลูก ก่อน  หากไม่เจอ  จึงจะไปหา single.php ในธีมหลัก

Read More

การสร้าง Shortcode ใช้เองใน WordPress

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

[myshortcode]

หรือ

[myshortcode] ... [/myshortcode]

หรือสำหรับใครที่ใช้เว็บบอร์ดมาก่อน  อาจจะคุ้นกับมันในชื่อว่า BBCode

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

Read More

เริ่มต้นเขียน Theme ของ WordPress ใช้เอง ตอนที่ 3

สวัสดีครับ  วันนี้ผมกลับมาเขียนเรื่องเกี่ยวกับการทำ Theme ของ WordPress ต่อ  หลังจากที่ดองเอาไว้เกือบสองปี (ครับ  ดองโพสต์นี้นั้นแหละ  ดองไว้เกือบสองปี) สำหรับใครที่มาไม่ทัน  สามารถย้อนกลับไปอ่านได้ตามลิงค์นี้

และสำหรับเนื้อหาในตอนที่ 3 ผมจะพาไปรู้จักกับฟังก์ชันหลักๆ ที่เราใช้กันใน The Loop กันครับ

อะไรคือฟังก์ชันใน The Loop?

ฟังก์ชันของ WordPress ตามความเข้าใจของผมคือจะมีอยู่ 2 ประเภท  คือ 1. กลุ่มที่ใช้ได้เฉพาะใน The Loop เท่านั้น  และ 2. กลุ่มที่สามารถใช้นอก The Loop ได้

Read More

แก้ปัญหา meta_compare ทำงานไม่ถูกต้องใน WordPress

ใน WordPress เราสามารถสั่ง Query โพสต์ออกมาตามค่าใน custom field ได้ (หรือชื่อในเชิงเทคนิคคือ Post Meta) ด้วยการเพิ่มอาร์กิวเมนต์ meta_query ลงไปในขั้นตอนการคิวรี่  อย่างนี้

$args = array(
	'post_type' => "mytype",
	'meta_query' => array(
		array(
			'key' => "mymeta",
			'value' => "myvalue",
			'compare' => "="
		)
	)
);

$myQuery = new WP_Query($args);

ซึ่งตามตัวอย่างข้างบน  จะเป็นการสั่งคิวรี่โพสต์จากโพสต์ไทป์ mytype โดยจะดึงจากโพสต์ที่มีค่า mymeta เท่ากับ myvalue

การคิวรี่นี้จะไม่เกิดปัญหาใดๆ ตราบใดที่เป็นการคิวรี่ตาม string ธรรมดา  แต่เมื่อใดก็ตามที่ต้องการเปรียบเทียบในลักษณะอื่นที่นอกเหนือจากข้อความธรรมดา (เช่นตัวเลข  หรือวันที่) การคิวรี่ด้วย meta compare ธรรมดาแบบนี้จะมีปัญหาทันที  เนื่องจากตัว WordPress จะมอง custom field เป็น string ธรรมดาๆ เป็นค่าปริยาย

Read More