“In 2013, you might have heard that eCommerce is getting more important. You might also have heard that web design is getting more important. But don’t forget blogging, because that is definitely getting more important. It’s hard to keep up, right? That’s why we like to gather up our favorite ExpressionEngine, WordPress, and Magento articles each month for your convenience. In honor of the New Year arriving, this month we’ve collected some of the best articles we’ve read all year. If you’d like more great content in 2014, follow us on Twitter,Facebook, and Google+. Enjoy and let us know what you think in the comment section!”
Tag: Wordpress
เปลี่ยนชื่อ blog ใน wordpress
ผมเปลี่ยนชื่อจาก http://www.diary.in.th/my เป็น http://my.diary.in.th
ขั้นตอนการดำเนินการก็ไม่ยาก เพราะอยู่ใน account เดียวกันแค่สร้าง subdomain เพิ่ม และก็อปปี้ข้อมูลจากไดเรกทอรีเดิมไปที่ใหม่
WordPress ก็ได้ทำเว็บไซต์เกี่ยวกับเรื่องนี้ไว้ด้วย สามารถทำตามได้เลย
หลังจากย้ายข้อมูลเสร็จก็ใช้ Apache mod rewrite จัดการให้ลิ้งก์เดิมถูกส่งต่อไปลิ้งใหม่ เช่น http://www.diary.in.th/archives/572 จะถูกส่งต่อไปที่ http://my.diary.in.th/archives/572 โดยอัตโนมัติ
ผมเขียนคำสั่งต่อไปนี้ในไฟล์ .htaccess
RewriteEngine On Redirect 301 /my http://my.diary.in.th Redirect 301 /archives http://my.diary.in.th/archives
การเปลี่ยนโดเมนของบล็อกที่ใช้ wordpress
เนื่องด้วยผมมีเหตุจำเป็นที่ต้องเปลี่ยนโดเมนบล็อกที่ใช้ wordpress จาก abc.com เป็น abc.net แต่หลังจากที่ได้แก้ไขค่าต่างๆ ของเว็บเซิร์ฟเวอร์แล้วพบว่า เมื่อเปิด abc.net ก็ยังคง redirect กลับไปที่ abc.com เช่นเดิม
ในที่สุดก็พบว่าจะต้องเข้าไปแก้ไขที่ฐานข้อมูลของ wordpress โดยตรง เพื่อไม่ให้ redirect ไปที่ชื่อโดเมนเดิม ซึ่งตารางที่จะต้องทำการแก้ไขคือ wp_options โดยต้องแก้ไข siteurl และ home ให้เป็นชื่อเว็บใหม่
จากของเดิมที่เป็น http://www.abc.com ต้องแก้ไขเป็น http://www.abc.net ครับ
😉
WordPress 2.3 มาแล้ว
ผม upgrade เป็น WordPress 2.3 (Dexter) แล้ว เวอร์ชันใหม่นี้มีอะไรบ้าง ก็คงมีคนพูดถึงมากมายแล้ว แต่ขอพูดถึงการเปลี่ยนแปลงที่น่าสนใจไว้หน่อยครับ
- Native tagging support มีระบบ tag เพิ่มเติมจาก category ของเดิม
- Plug-in update notification เมื่อผู้พัฒนา plug-in ออกเวอร์ชันใหม่ๆ ก็จะมีข้อความแจ้งบอก (แต่ต้องเข้าไปดูในส่วน plug-in เองนะ)
- Canonical URLs ทำให้รองรับรูปแบบของ URL ที่ยืดหยุ่นมากขึ้น (อ่านรายละเอียดเพิ่มเติม)
- advanced WYSIWYG ที่เลิกซ่อนฟังก์ชันที่แอบไว้ของ TinyMCE (ต้องกด CTRL+Shift+V)
- รองรับ Atom 1.0 อย่างสมบูรณ์แบบ
- เร็วขึ้นจากเดิม 800% จากผลของ jQuery (ว้าว!)
Upgrade ยังไง?
ขั้นตอนการ upgrade ก็ง่ายดายเหมือนเดิม แต่ควรจะทำการ Backup Database และไฟล์เดิมเสียก่อน แล้วก็ upload ไฟล์ต่างๆ ของเวอร์ชัน 2.3 เข้าไป และเรียกใช้งาน upgrade.php ก็เป็นอันเสร็จ อย่างไรก็ตามควรจะตรวจสอบด้วยว่า plug-in ที่ใช้อยู่นั้นทำงานได้กับเวอร์ชัน 2.3 หรือไม่
สำหรับผมนั้นโชคดีที่ plug-in ไม่มีปัญหาอะไร แต่ก็พบว่า plug-in ที่ใช้อยู่จำนวนหนึ่งได้ update เวอร์ชันไปแล้ว (คลิกเข้าไปทีดูที่ส่วนของ plug-in จะเห็นข้อความเตือนเลย)
ทำอะไรบ้างหลังจาก upgrade
หากเคยใช้ tag plug-in ต่างๆ มาก่อนหน้านี้ เช่น Ultimate Tag Warrior, Jerome’s Keyworkds, Simple Tags และ Bunny’s Tecghorati Tag ก็ควรจะทำการ import เอาข้อมูลเดิมมาใส่ในฐานข้อมูล tag ของ WordPress ซึ่งก็ทำไม่ยากเพราะทีมงานของ WordPress ได้เตรียมการไว้ให้แล้ว
ขั้นตอนง่ายๆ แค่คลิกที่ Manage -> Import แล้วก็เลือกว่าจะ Import tag จาก plug-in ไหน ทุกอันจะมีคำเตือนว่า “Don’t be stupid – backup your database before proceeding!” ยังไงก็ควรจะทำตามนะครับ
แก้ไขธีมให้รองรับ tag
ถ้าธีมที่ใช้อยู่ยังไม่รองรับ tag เราก็สามารถเพิ่มเข้าไปได้เลย โดยการเพิ่มฟังก์ชัน the_tags() เข้าไปเพื่อให้แสดง tag ที่เราใส่ออกมา รูปแบบเป็นดังนี้ครับ
<?php the_tags(‘before’, ’separator’, ‘after’); ?>
before เป็น คำ หรือ ข้อความ หรือ คำสั่งของ HTML ที่อยากให้ปรากฎก่อนรายชื่อ tag ต่างๆ
separator เป็น ตัวอักษรที่ใช้แยก tag ต่างๆ ออกจากกัน
after เป็น คำ หรือ ข้อความ หรือ คำสั่งของ HTML ที่อยากให้ปรากฎหลังรายชื่อ tag ต่างๆ
เช่น ถ้าอยากให้แสดงผลแบบนี้ แท็กของฉัน: กินข้าว, ดูหนัง, ฟังเพลง ก็ใช้คำสั่งแบบนี้
<?php the_tags(‘แท็กของฉัน: ’, ’, ’, ‘’); ?>
อ่านรายละเอียดเพิ่มเติมได้ที่ How to add WordPress 2.3 tags to your current theme ครับ
ส่วน tag clouds เหมือนทางฝั่งขวามือใน sidebar ก็ใช้ฟังก์ชัน wp_tag_cloud() เช่น
<?php wp_tag_cloud(‘smallest=8&largest=18&number=50’); ?>
smallest เป็นขนาดของตัวอักษรตัวเล็กที่สุด
largest เป็นขนาดของตัวอักษรตัวใหญ่ที่สุด
number เป็นจำนวน tag ที่จะแสดงออกมา
มี option อื่นๆ อีกอ่านรายละเอียดเพิ่มเติมได้ที่นี่ครับ: wp_tag_cloud
แก้วันที่ให้แสดงเป็นภาษาไทย
ชื่อเดือนและวันนั้น ผมก็ทำการ localize เฉพาะในส่วนของการแสดงผลชื่อเดือนและวันให้เป็นภาษาไทย จากนั้นก็สร้างไดเรกทอรีชื่อ languages ภายใต้ wp-includes แล้วก็เอาไฟล์ th_TH.mo ใส่ไว้ข้างใน ขั้นตอนต่อไปก็แก้ไขไฟล์ wp-config.php ให้มาอ่านไฟล์นี้
define (‘WPLANG’, ‘th_TH’); // อ่านเพิ่มเติมที่นี่
แล้วผมก็เขียน plug-in ง่ายๆ ขึ้นมาเพื่อให้แปลงปี ค.ศ. เป็นปี พ.ศ. เสีย plug-in ใช้งานได้ดีในส่วนของข้อความที่โพสในแต่ละวัน แต่ก็ยังมีบางส่วนที่ต้องเข้าไปแก้ไขใน script โดยตรง ซึ่งก็ไม่ได้ยุ่งยากอะไร
ปรับปรุง WordPress
จริงๆ ไม่ได้ทำอะไรมากครับ แค่เปลี่ยนธีมใหม่เป็น Theme Leia ของ kapikua
ปรับธีมแต่ละทีก็วุ่นเหมือนกัน เพราะมีเฟอร์นิเจอร์ต่างๆ ให้เอามาใส่เพิ่มเพียบ เช่น FlickBadge, Statcounter, Feed Burner และ MyBloglog ผมเห็นเขาใส่กันก็เลยอยากจะลองดูบ้าง เดี๋ยวนี้มีของเล่นเยอะดีนะ
แต่เฟอร์นิเจอร์พวกนี้ใส่เข้าไปเยอะๆ ก็คงไม่ดีเท่าไหร่ เพราะกว่าที่จะโหลดของเล่นต่างๆ เหล่านี้ขึ้นมาจนเสร็จ บางทีก็ใช้เวลาเหมือนกัน คลิกอ่านอะไรสักทีก็มี connection วิ่งกันให้วุ่นไปหมด
อ่อ แล้วก็เห็นเขามี Pagerank เพิ่มเข้ามาอีกด้วย นี่ยังไม่นับตัวจัดอันดับ Blog ที่มีคนไทยคิดขึ้นมาอีก
ว้าว.. เราวิ่งแข่งกันทุกที่ ไม่เว้นแม้แต่ในอินเทอร์เน็ต เหนื่อยกันมั๊ยครับเนี่ย 🙄
ส่วนผมวันนี้เอา captcha ที่เป็น plugin ของ word press มาใส่เพิ่ม เพราะรำคาญพวก comment spam เหลือเกิน ถึงแม้ Akismet จะเอาอยู่ก็เถอะ แต่เผลอแป๊ปเดียว spam ขึ้นเป็นพันเป็นหมื่นครับ 😯
WordPress 2.1 – “Ella”
ถ้าหากคุณสงสัยว่า WordPress คืออะไร พูดง่ายๆ มันโปรแกรมเว็บบล็อกที่ผมใช้งานอยู่นี่แหละครับ เวอร์ชันนี้มีอะไรที่ได้พัฒนาและปรับปรุงใหม่พอสมควร ซึ่งผมก็ได้ upgrade เป็นเวอร์ชันใหม่ที่ชื่อว่า “Ella” เรียบร้อยแล้ว
แต่ยังไม่ได้ตรวจสอบเลยว่า plugins ทั้งหลายที่ใช้งานอยู่ ยังปกติดีหรือเปล่า ซึ่งคุณ Maria Langer ได้เขียนเรื่องเกี่ยวกับ Dealing with Plugin Compatibility ไว้แล้วครับ ผมคงจะต้องตามเข้าไปอ่านวันหลัง 🙂
เพิ่มเติม:
http://codex.wordpress.org/Plugins/Plugin_Compatibility/2.1
โครงสร้าง Theme ของ WordPress
สักวันหนึ่งจะลองนั่งเขียน Theme ของ wordress เองครับ บังเอิญไปเจอเว็บที่เขียนอธิบายไฟล์ต่างๆ ของ theme ไว้ที่นี่
style.css – The main stylesheet. This must be included with your theme.
index.php – The main template. If your theme provides its own templates, index.php must be present.
comments.php – The comments template. If not present, wp-comments.php is used.
comments-popup.php – The popup comments template. If not present, wp-comments-popup.php is used.
single.php – The single post template. Used when a single post is queried. For this and all other query templates, index.php is used if the query template is not present.
page.php – The page template. Used when a page is queried.
category.php – The category template. Used when a category is queried.
author.php – The author template. Used when an author is queried.
date.php – The date/time template. Used when a date or time is queried. Year, month, day, hour, minute, second.
archive.php – The archive template. Used when a category, author, or date is queried. Note that this template will be overridden by category.php, author.php, and date.php for their respective query types.
search.php – The search template. Used when a search is performed.
404.php – The 404 Not Found template. Used when WordPress cannot find a post that matches the query.