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

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

เมื่อใช้ RankMath SEO หรือ Yoast SEO ร่วมกับส่วนเสริม WPML SEO ของเรา คุณอาจพบค่า hreflang ที่ไม่ถูกต้องในไซต์แมป XML แทนที่จะใช้ค่า hreflang ที่ตั้งไว้ในการตั้งค่าภาษาของ WPML ไซต์แมป XML จะใช้รหัสภาษา (เช่น nz au) แทนรหัสแบบเต็มตามที่คาดไว้ (เช่น en-nz en-au)

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

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


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

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

  • แทนที่:
    private function getAlternateLinks( $alternateLangs ) {
        $buildAlternateLink = function ( $url, $lang ) {
            return '<xhtml:link rel="alternate" hreflang="' . esc_attr( $lang ) . '" href="' . esc_url( $url ) . '" />';
        };
            


  • ด้วย:
    private function getAlternateLinks( $alternateLangs ) {
        $buildAlternateLink = function ( $url, $lang ) {
            $languages = apply_filters( 'wpml_active_languages', null, [] );
            $hreflang = isset( $languages[ $lang ]['tag'] ) ? $languages[ $lang ]['tag'] : $lang;
            
            return '<xhtml:link rel="alternate" hreflang="' . esc_attr( $hreflang ) . '" href="' . esc_url( $url ) . '" />';
        };
            

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