WPML
สถานะ
แก้ไขแล้ว
รายงานสำหรับ
WPML SEO 2.2.4
แก้ไขใน
2.2.5
ปลั๊กอิน/ธีมที่เกี่ยวข้อง
Rank Math SEO
แท็กหัวข้อ
Compatibility

ภาพรวมของปัญหา

เมื่อใช้ Rank Math หรือ Yoast SEO ร่วมกับ WPML SEO ลิงก์ทางเลือกในซอร์สโค้ดจากไซต์แมป XML อาจแสดง URL ของหน้าแรกที่แปลแล้วอย่างไม่ถูกต้อง โดยแสดงเป็นลิงก์ถาวรภายใน (เช่น /es/home/) แทนที่จะเป็น URL รูทของภาษาตามที่ควรจะเป็น (เช่น /es/) ปัญหานี้ไม่ส่งผลกระทบต่อการแสดงผลส่วนหน้า ซึ่งลิงก์ canonical และ hreflang จะยังคงแสดงผลอย่างถูกต้อง

วิธีแก้ปัญหาชั่วคราว

โปรดตรวจสอบให้แน่ใจว่าคุณได้สำรองข้อมูลไซต์ทั้งหมดของคุณก่อนดำเนินการต่อ


  • เปิดไฟล์ …/wp-content/plugins/wp-seo-multilingual/classes/Shared/Sitemap/BaseAlternateLangHooks.php

  • ค้นหาบรรทัดที่ 61

  • แทนที่:
    $link[ self::KEY ][ $lang ] = apply_filters( 'wpml_permalink', $link['loc'], $lang );
            


  • ด้วย:
    $link[ self::KEY ][ $lang ] = apply_filters( 'wpml_permalink', $link['loc'], $lang, true );
            

  • ทำขั้นตอนเดียวกันซ้ำในบรรทัดที่ 89

  • แทนที่:
    return apply_filters( 'wpml_permalink', $getPermalink( $id ), $language );
            


  • ด้วย:
    return apply_filters( 'wpml_permalink', $getPermalink( $id ), $language, true );
            

หลังจากใช้การเปลี่ยนแปลงเหล่านี้ คุณต้องสร้างไซต์แมป XML ของคุณใหม่:

  • สำหรับ Rank Math: ไปที่ “Rank Math > Sitemap Settings” เปลี่ยนค่า “Links per sitemap” และบันทึกการตั้งค่า (คุณสามารถเปลี่ยนกลับเป็นค่าที่คุณต้องการได้ในภายหลัง)
  • สำหรับ Yoast SEO: ทำตามบทช่วยสอนนี้เพื่อสร้างไซต์แมป XML ใหม่

ปัญหาที่ทราบแล้วทั้งหมด →