- สถานะ
- แก้ไขแล้ว
- รายงานสำหรับ
- WPML Multilingual CMS 3.3.6
- แก้ไขใน
- 3.3.7
ภาพรวมของปัญหา
โพสต์ที่มีชื่อเดียวกันจะสร้าง URL เดียวกันแทนที่จะเพิ่มคำต่อท้าย -2 หรือ -3 ลงในลิงก์ถาวร ส่งผลให้โพสต์ที่สองและสามที่มีชื่อเดียวกันถูกสร้างขึ้นด้วย slug เดียวกัน และไม่สามารถเข้าถึงได้ที่ส่วนหน้าเว็บไซต์
ตัวอย่างเช่น หากคุณสร้าง 3 โพสต์ ซึ่งทั้งหมดมีชื่อว่า Hello World โพสต์ทั้งหมดจะมี slug เป็น hello-world
วิธีแก้ปัญหาชั่วคราว
คุณต้องไปที่:
/wp-content/plugins/sitepress-multilingual-cms/inc/post-translation/wpml-admin-post-actions.class.php
และเปลี่ยนบรรทัดที่ 111 จาก:
protected function get_save_post_lang( $post_id, $sitepress ) {
เป็น:
public function get_save_post_lang( $post_id, $sitepress ) {
จากนั้นคุณต้องไปที่:
/wp-content/plugins/sitepress-multilingual-cms/inc/url-handling/wpml-slug-filter.class.phpและเพิ่มส่วนต่อไปนี้หลังบรรทัดที่ 68:
$post_language = $post_language ? $post_language : $this->sitepress->post_translations()->get_save_post_lang( $post_id, $this->sitepress );