แสดงภาพตัวอย่างอัตโนมัติกรณีไม่ได้ตั้ง Featured Image

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

โพสต์ไม่มีภาพ Featured Image

โดยปกติที่ผมเจอ  จะใช้วิธีเช็ค if … else กับฟังก์ชัน has_post_thumbnail() กัน  ว่ามีภาพ Featured Image หรือไม่  ถ้าออกมาเป็น false จึงค่อยแสดงภาพที่เตรียมไว้ … โค๊ดมันก็จะรกๆ ประมาณนี้

if(has_post_thumbnail()){
	the_post_thumbnail();
}else{
	echo '<img src="http://placehold.it/390x280">';
}

ครับ  มันรก  จริงๆ แล้วเราสามารถทำให้เหลือแค่ the_post_thumbnail() อันเดียวโดดๆ ได้  ด้วยการใช้ Filter เข้ามาช่วยครับ

Read More

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

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

[myshortcode]

หรือ

[myshortcode] ... [/myshortcode]

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

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

Read More

ลองเล่น elementaryOS Isis

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

เรื่องของเรื่องคือวันนี้ผมพยายามอัพเกรดซอฟต์แวร์ในเครื่อง (ซึ่งใช้ Luna Unstable เป็นหลัก) แต่เกิดเหตุไม่คาดฝันขึ้น  ทำให้ Visual ต่างๆ ของ elementaryOS พังยับไปเลย  เลยกะว่าลงใหม่เลยแล้วกัน  แต่ว่าไหนๆ ก็ไหนๆ เลยลองหา Isis มาลงเล่นเลยแล้วกัน  ถ้ามันโอเคแล้วก็ใช้ยาวเลย

แต่บังเอิ๊ญญญญ มันยังไม่โอเคนี่สิ

สวัสดี Isis

Read More