نظرة عامة على المشكلة
عندما تزور مقالة أو صفحة يحتوي المعرّف النصي للرابط الخاص بها، وعلى التوالي، عنوان URL الخاص بها، على أحرف غير ASCII، تحدث إعادة توجيه مستمرة.
يحدث هذا بسبب الطريقة التي يتم بها التعامل مع هذه الأحرف – حيث يجب تحويلها وتشفيرها بشكل صحيح حتى يمكن استخدامها كعنوان URL.
ومن أجل القيام بذلك، تُستخدم دالتا urlencode (يفتح في علامة تبويب جديدة) وurldecode (يفتح في علامة تبويب جديدة).
يمكنك قراءة المزيد حول هذا الموضوع في الرابطين التاليين:
- لماذا يجب أن أستخدم urlencode؟ (يفتح في علامة تبويب جديدة) (Stack Overflow)
- معرّفات الموارد الموحدة (URI) (يفتح في علامة تبويب جديدة) (قوة مهام هندسة الإنترنت)
حل بديل مؤقت
- اذهب إلى wp-content/sitepress-multilingual-cms/classes/query-filtering/class-wpml-query-parser.php في السطر 421.
- في is_permalink_part_of_request()، استبدل
return substr( trailingslashit( $request_uri ), 0, strlen( $permalink_path ) ) === $permalink_path;
بما يلي:
return substr( trailingslashit( urldecode( $request_uri ) ), 0, strlen( $permalink_path ) ) === $permalink_path;