WPML
الحالة
محلولة
أُبلغ عنها لـ
WPML SEO 2.2.4
تم حلها في
WPML SEO 2.2.5
الإضافة/القالب ذو الصلة
Rank Math SEO
وسوم الموضوع
Compatibility

نظرة عامة على المشكلة

عند استخدام RankMath SEO مع WPML، قد تواجه مشكلة تتمثل في أن عناوين URL للصفحة الرئيسية في الكود المصدري لخرائط الموقع <xhtml:link rel="alternate" hreflang="..."> غير صحيحة للغات الثانوية. بدلاً من عرض الصفحة الرئيسية الخاصة باللغة (على سبيل المثال، domain.com/?lang=es)، تعرض خريطة الموقع عنوان URL كاملاً للصفحة (على سبيل المثال، domain.com/page-slug/?lang=es).

حل بديل مؤقت

يُرجى التأكد من أخذ نسخة احتياطية كاملة لموقعك قبل المتابعة.


  • افتح الملف …/wp-content/plugins/wp-seo-multilingual/classes/Shared/Sitemap/BaseAlternateLangHooks.php.

  • ابحث عن السطر 88.

  • استبدل:
    			$mapPermalink = function ( $id, $language ) use ( $getPermalink ) {
    				return apply_filters( 'wpml_permalink', $getPermalink( $id ), $language );
    			};
            


  • بـ:
    			$mapPermalink = function ( $id, $language ) use ( $getPermalink ) {
    
    				// WPML Workaround for wpmlsupp-13368 
    				$front_id = (int) get_option( 'page_on_front' );
    				if ( $front_id ) {
    					$default_lang = apply_filters( 'wpml_default_language', null );
    					$id_in_default = (int) apply_filters( 'wpml_object_id', (int) $id, 'page', false, $default_lang );
    					if ( $id_in_default && $id_in_default === $front_id ) {
    						return apply_filters( 'wpml_permalink', trailingslashit( home_url() ), $language );
    					}
    				}
    
    				return apply_filters( 'wpml_permalink', $getPermalink( $id ), $language );
    			};
            

  • أعد بناء خرائط الموقع: اذهب إلى «Rank Math > Sitemap Settings»، وغيّر قيمة «Links per sitemap»، ثم احفظ.

جميع المشاكل المعروفة →