تعطيل إعادة التوجيه في ووردبريس إذا لم يتوفر رابط فرعي
تعتبر خاصية إعادة التوجيه في ووردبريس واحدة من الوظائف التي قد تسهل على المستخدمين الوصول إلى المحتوى، ولكن في بعض الأحيان يمكن أن يؤدي ذلك إلى تجربة مستخدم غير مرغوب فيها. على سبيل المثال، قد يكون لديك رابط فرعي لا توجد له صفحة موجودة، والنتيجة الافتراضية أن ووردبريس يقوم بإعادة توجيه المستخدمين إلى رابط آخر مشابه. في بعض الحالات، قد ترغب في عرض صفحة 404 بدلاً من إعادة التوجيه هذه. في هذا المقال، سنتناول كيفية تعطيل خاصية "Disable Wordpress Redirect URL child to another link if not exist" لضمان عرض صفحة 404 المناسبة.
مشكلة إعادة التوجيه في ووردبريس
تحدث هذه المشكلة عندما يقوم النظام بإعادة توجيه الروابط التي لا توجد لها صفحات فعلياً إلى روابط أخرى مشابهة، مما قد يتسبب في ارتباك للمستخدمين الذين يبحثون عن محتوى محدد. مثلاً، إذا كان لديك الرابط domain.com/what-ever-you-write/about
وهذه الصفحة غير موجودة، يقوم ووردبريس تلقائيًا بإعادة توجيه المستخدم إلى domain.com/about
، وهذا بالتأكيد ليس ما تود تحقيقه.
كيفية تعطيل خاصية إعادة التوجيه
لتعطيل هذه الخاصية والحصول على صفحة 404 بدلاً من إعادة التوجيه، تحتاج إلى استخدام بعض الأكواد المخصصة في ملف functions.php الخاص بقالبك. أولًا، يجب التأكد من عدم استخدام وظائف مثل template_redirect
لأنها تعمل بعد أن يتم تنفيذ عملية إعادة التوجيه، مما يجعلها غير فعالة.
يمكنك استخدام الأكواد التالية لتعطيل إعادة التوجيه:
add_action('template_redirect', 'disable_redirect_if_not_exist');
function disable_redirect_if_not_exist() {
global $wp_query;
if (is_404()) {
return;
}
$current_url = home_url(add_query_arg(array(), $wp_query->request));
$page_id = url_to_postid($current_url);
if (!$page_id) {
$wp_query->set_404();
status_header(404);
include(get_404_template());
exit();
}
}
التأكد من التطبيق الصحيح
بعد تطبيق الكود السابق، يجب عليك اختبار الروابط غير الموجودة للتأكد من أن النظام يعرض صفحة 404 بدلًا من إعادة التوجيه. حاول الوصول إلى رابط غير موجود وراقب النتيجة. إذا عمل الكود بشكل صحيح، ستظهر لك صفحة 404 بدلًا من إعادة التوجيه.
الخاتمة
إن تعطيل خاصية "Disable Wordpress Redirect URL child to another link if not exist" يمكن أن يكون له تأثير كبير على تجربة المستخدم لموقعك. من المهم تقديم رسالة واضحة للمستخدمين عندما يبحثون عن محتوى غير موجود بدلاً من إدخالهم في دوامة من الروابط غير المفيدة. باستخدام الكود المذكور، يمكنك ضمان أن كل رابط غير موجود يعرض صفحة 404 بدلاً من إعادة توجيه غير مرغوب فيها.
تأكد من مراجعة موقعك بانتظام للتأكد من عدم وجود روابط مكسورة ولتقديم أفضل تجربة ممكنة لمستخدميك.