Permalinks คืออะไร อธิบายแบบเข้าใจกันง่าย ๆ มันก็คือ URL ที่ WordPress สร้างมาให้ในแต่ละ Post นั้นละครับ โดยมันก็จะมีรูปแบบในการสร้างที่แตกต่างกันแล้วแต่เราจะกำหนด
![Wordpress : จัดการกับ Permalinks Wordpress : จัดการกับ Permalinks [1]](http://rabbitinblack.com/wp-content/uploads/2011/11/permalink-1.jpg)
WordPress : Default Permalinks
เมื่อเราลง WordPress ใหม่ ตัว WordPress เองจะตั้งค่า Permalinks มาในรูปแบบ http://example.com/?p=123
คือเป็น URL ของเว็บเราตามด้วย ID ของ Post นั้น ๆ ซึ่งเราจะไม่เปลี่ยนก็ได้ แต่ http://example.com/?p=123 นั้นมันไม่ใช่ URL ที่คนอย่างเราจะสามารถมองแล้วรู้เลยว่า มันเกี่ยวกับอะไร ดังนั้นการตั้งค่า Permalinks จะมีประโยชน์ในการแสดงผล และการค้นหาสำหรับเว็บเรา เรียกกันว่า Pretty URLs
WordPress : จะตั้งค่า Permalinks ได้ยังไง
![WordPress : จัดการกับ Permalinks WordPress : จัดการกับ Permalinks [3]](http://rabbitinblack.com/wp-content/uploads/2011/11/permalink-3.jpg)
ให้เลือกที่หัวข้อ Permalinks ซึ่งจะอยู่บริเวณตำแหน่งที่ 1
WordPress : Permalinks ตั้งค่าได้กี่แบบ
ดูที่ตำแหน่งที่ 2 เราก็จะทราบว่าเราสามารถตั้งค่า Permalinks ได้ดังนี้
- Default
- Day and name : http://example.com/2011/11/07/sample-post/ โดยใช้ ปี ตามด้วย เดือน ตามด้วย วันที่ ตามด้วย ชื่อ
- Month and name : http://example.com/2011/11/sample-post/ โดยใช้ ปี ตามด้วย เดือน ตามด้วย ชื่อ
- Numeric : http://example.com/archives/123 โดยใช้คำว่า archives ตามด้วย ID ซึ่งมันก็ไม่ค่อยแตกต่างกับแบบ Default คือ คนเราอ่านแล้วไม่รู้เรื่อง
- Custom Structure : เป็นรูปแบบที่เรากำหนดได้เอง
WordPress : Custom Struture Permalinks
มาดูกันว่าเราจะตั้ง Permalinks ในรูปแบบที่เรากำหนดเองได้ยังไงบ้าง
%year%
ใช้ตัวเลข ปี ที่เรา Publish Post%monthnum%
ใช้ตัวเลข เดือน ที่เรา Publish Post%day%
ใช้ตัวเลข วันที่ ที่เรา Publish Post%minute%
ใช้ตัวเลข นาที ที่เรา Publish Post%second%
ใช้ตัวเลข วินาที ที่เรา Publish Post%post_id%
ใช้ตัวเลข Post ID ของ Post นั้น ๆ%postname%
ใช้ Slug ซึ่งเราตั้งค่าไว้ อย่างเช่น Post นี้ก็มี Slug ชื่อ wordpress-permalinks โดยให้ดูที่ URL ด้านบน%category%
ใช้ชื่อ Category โดยถ้าเป็น Sub Category ก็จะแสดง Category ตามด้วย Sub Category ไปเรื่อย ๆ และถ้า Post นั้นอยู่หลาย Category WordPress จะเลือกชื่อ Category ที่มี Category ID น้อยที่สุด%tag%
ใช้ชื่อ Tag ที่เราได้ตั้งค่าไว้%author%
ใช้ชื่อของคนที่ Publish Post นั้น ๆ
WordPress : วิธีใช้ Custom Structure Permalinks
ใช้นำตัวที่เราต้องการใช้มาเรียง โดยคั่นด้วย / อย่างเช่น /%year%/%monthnum%/%postname%/
หรือว่า /%year%/%author%/%postname%/
WordPress : Category Base และ Tag Base
สำหรับตำแหน่งที่ 3 นั้นจะเป็นการตั้งชื่อให้กับส่วนของ Category และ Tag โดยปรกติแล้วถ้าเราเลือกเพื่อดูเฉพาะ Category อย่างเช่น ผมจะดู Category ชื่อ wordpress ตัว Permalinks ก็จะเป็น http://example.com/category/wordpress และ Tag เองก็เป็นแบบนี้เหมือนกัน แค่เปลี่ยนเป็น http://example.com/tag/wordpress
ส่วนของ Category Base และ Tag Base นั้นจะทำให้เราสามารถเปลี่ยนคำว่า Category และ Tag ได้ อย่างเช่นในช่อง Category Base ผมใส่คำว่า Web-Category และ Tag Base ผมใส่คำว่า Web-Tag ดังนั้น Permalinks ที่ได้จะเป็นแบบนี้ http://example.com/Web-Category/wordpress กับ http://example.com/Web-Tag/wordpress
ทั้งหมดนั้นก็อยู่ที่เราจะนำไปประยุกต์ยังไงให้เหมาะสมกับเว็บเรามากที่สุดนะครับ >_<
ขอบคุณครับ
ขอบคุณที่คอมเม้นท์เหมือนกันครับ
ขอบคุณที่ขอบคุณคอมเม้นท์ครับ
เพิ่มเติมเรื่องไฟล์
.htaccess หน่อยดิ ทำใน localhost มันไม่เปลี่ยนให้
ไปตั้งให้มันสามารถเขียนได้ดิ ไม่ก็สร้าง .htaccess รอไว้
ไฟล์ .htaccess มีอยู่แล้ว แต่ไม่อัพเดท
ทดลองย้ายไปไว้ที่โฮสจริงแล้ว
.htaccess อัพเดทได้เองกำลังคิดว่าเป็นเพราะ appserve
บางทีเราไปตั้งในเครื่องเป็น Read Only
ลองแก้ permalink แล้ว กดลิงค์ไหนๆก็กลายเป็น 404 หมดเลยค่ะ
ลองเปลี่ยนไปเลือก permalink ตัวอื่นแล้วก็ยังไม่หาย
มือใหม่มาก แก้ยังไงดีคะ T_T
ทำใน localhost ค่ะ
ตามที่บอกด้านล่างเลยครับ ให้สร้าง .htaccess รอไว้ ให้มัน Writeable ไว้ด้วยอะครับ
เกี่ยวไหมค่ะ ว่า os server เป็น windows จะทำไม่ได้ .. เพราะเป็นปัญหาเดียวกันเลยค่ะ ทำแล้วกลายเป็นน 404 ค่ะ (host จริงใช้ windows ค่ะ)
ไม่นะครับ ตัว server windows จะไม่ได้ใช้ .htaccess ซึ่งอีตัวที่ windows ใช้ตัว wordpress ก็สามารถเจนให้ได้นะครับ
แนะนำ วิธีแก้ปัญหา ให้ host windows แสดง ชื่อ link เป็นภาษาไทย ให้ด้วยค่ะ ลองมาหลายวิธีแล้วยังแก้ไข ไม่ได้เลยค่ะ
http://www.thaiseoboard.com/index.php?action=printpage;topic=219683.0