- الحالة
- محلولة
- أُبلغ عنها لـ
- 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»، ثم احفظ.