ปัญหาของ Permalink ของ wordpress 4.x

เนื่องจากการใช้ wordpress เป็น  blog สำหรับภาษาไทยจะมีปัญหาอยู่ 2-3ข้อ

  1. Permalink แสดงภาษาไทยแบบตัดคำ คือไม่เกิน 200 unicode
  2. เมือใช้ชือภาษาไทย เห็น Permalink เป็นภาษาที่อ่านไม่ได้บ้าง browser เช่น IE บน windows 10 แต่  Chome อ่านได้
  3. ใน Mode แก้ไขบทความไม่สามารถใส่คำให้ยาวได้

การแก้ปัญหา

ต้องทำการแก้ไขอยู่ 2 ส่วน

  1. Database แก้ไขในส่วนของ Table “wp_posts:postname”จาก Varchar(200) แก้ให้เป็น 1500-2000
  2. แก้ไข file formatting.php  จะอยู่ใน /var/www/html/wp-includes/formatting.php  ของใครที่ path แตกต่างไปจากนี้ก็ให้เข้าไปที่ home ของ web นะครับ แล้วค่อยเข้าไปที่ wp-includes จะพบ file นี้ แก้ไขตามนี้ครับ
#vi formatting.php       
#หาคำนี้
$title = utf8_uri_encode($title, 200);
#แก้ไขใหเป็นดังนี้
$title = utf8_uri_encode($title, 2000);

#หาคำนี้
function  function sanitize_title($title, $fallback_title = ”, $context = ‘save’) {
#ใส่ command  ก่อน return
$title=urldecode($title);
return $title;

หลังจากแก้แล้วยังใช้ไม่ได้นะครับ เพราะว่าบทความที่เราทำการเขียนก่อนหน้านี้จะถูกตัดคำไปก่อนแล้ว Save ลงดาต้าเบส และภาษาก็ยังคงตัดคำอยู่ เราต้องไปแก้ไขบทความของเราใหม่ โดยไปแก้ ที่ Permalink ตรงชื่อบทความ แล้วทำการ อัพเดตบทความใหม่ทั้งหมด ไม่งันจะไม่พบหน้าที่เราเขียนจะขึ้น 404 error นะครับ

ภาพ 404 error

สรุปเราต้องแก้ 3 ส่วนด้วยกัน คือ DB, formatting.php โดยแก้ความยาวกับ  unicode ครับ

ขอให้โชคดีครับ

Facebook Comments