سعيد البقالي

تصميم وتطوير المواقع وتطوير وبرمجة قوالب ووردبريس وإضافات ووردبريس

  • الرئيسية
  • المدونة
  • راسلني
أنت في:الرئيسية / شرحات ووردبريس / إعادة توجيه المستخدمين عند تسجيل الدخول

إعادة توجيه المستخدمين عند تسجيل الدخول

9 يونيو، 2014 4 تعليقات

في هذه التدوينة سنرى طريقة إعادة توجيه المستخدمين إلى صفحات مختلفة عند تسجيل الدخول حسب رتبة المستخدم أو إسمه.

إعادة توجيه المستخدمين عند تسجيل الدخول

في المثالين سنستعمل فيلتر login_redirect الذي يصلح تحديداً لتغيير المسار عند تسجيل الدخول في ووردبريس.

إعادة توجيه المستخدمين حسب الرتب.

إذا كنت تريد إرسال مديرين, محررين, كتَّاب, مشتركين… إلى صفحات محددة من قبلك (كل واحد إلى صفحة مختلفة) فقط عليك إضافة هذا الكود إلى ملف functions.php او إلى إضافتك المخصصة.

// ---------------------------------
// إعادة توجيه المستخدمين حسب الرتبة
// ---------------------------------
function saidweb2_com_custom_login_redirect($redirect_to, $request, $user) {
    global $user;
    if ( isset( $user->roles ) && is_array( $user->roles ) ) {

        // إذا كن المستخدم مديراً
        // يتم توجيهه إلى صفحة إدارة الإضافات
        if ( in_array( 'administrator', $user->roles ) )
            return home_url( '/wp-admin/plugins.php' );

        // إذا كان المستخدم محرراً
        // يتم توجيهه إلى صفحة إدارة المقالات.
        elseif ( in_array( 'editor', $user->roles ) )
            return home_url( '/wp-admin/edit.php' );

        // باقي المستخدمين
        // يتم توجيههم إلى الصفحة الرئيسية.
        else
            return home_url();

    } else {
        return $redirect_to;
    }
}
add_filter( 'login_redirect', 'saidweb2_com_custom_login_redirect', 10, 3 );

إعادة توجيه المستخدمين حسب إسم المستخدم.

إذا كنت تريد إعادة توجيه المستخدم حسب إسمه (المستعمل في تسجيل الدخول) تحديداً و ليس حسب رتبته, في الأول عليك تحديد إلى أي صفحة سيتم إرسال كل واحد.

مثلا, في موقع شركة يستعمل ووردبريس, قد يكون من المفيد توجيه مستخدمين معيَّنين إلى صفحات مخصصة تتضمن معلومات حول القسم الذي يهتم به كل واحد عوض الذهاب إلى الصفحة الرئيسية للوحة التحكم.

// ---------------------------------
// إعادة توجيه المستخدمين حسب الإسم
// ---------------------------------
function saidweb2_com_custom_login_redirect($redirect_to, $request, $user) {

    // ندخل إلى المتغير العام
    global $user;

    // نقوم بتخزين إسم المستخدم في متغير
    $userredirect = esc_attr($user->user_login);

    // إذا كان إسم المستخدم هو  "admin"
    // نقوم بتوجيهه إلى الصفحة الإفتراضية.
    if ( $userredirect === 'admin' )
        return $redirect_to;

    // إذا كان إسم المستخدم هو "said"
    // نقوم بتوجيهه إلى صفحة محددة.
    elseif ( $userredirect === 'said' )
        return home_url( '/users/said/' );

    // إذا كان إسم المستخدم هو "mohammed"
    // نقوم بتوجيهه إلى صفحة محددة.
    elseif ( $userredirect === 'mohammed' )
        return home_url( '/users/mohammed/' );

    // باقي المستخديمين
    // يتم توجيههم إلى الصفحة الرئيسية للموقع.
    else
        return home_url();

}
add_filter('login_redirect', 'saidweb2_com_custom_login_redirect', 10, 3);
في هذا الكود يجب تغيير أسماء المستخدمين (admin, said,mohammed) و كذلك روابط الصفحات التي يتم إعادة التوجيه إليها.

بعد ذلك من الواجب وضع رابط لصفحة تسجيل الدخول wp-login.php في مكان ما من الموقع ليتمكن المستخدمون من الدخول, أو إضافة نمودج تسجيل الدخول بواسطة wp_login_form().

هذه الوضيفة تقوم بإنشاء نمودج تسجيل الدخول (login form) بسيط لكي يستعمل في أي مكان من الموقع, يمكننا وضعه في sidebar.php مثلاً و إعطائه تنسق معيّن عن طريق css.

<?php wp_login_form(); ?>

إعادة توجيه المستخدمين بواسطة إضافة.

Peter’s Login Redirect: تمكنك من إعادة توجيه المستخدمين عند تسجيل الدخول و عند تسجيل الخروج.
WordPress Login Redirect: هذه الإضافة تقوم بتوجيه المستخدمين من رتبة مشترك إلى الصفحة الرئيسية للموقع.
Login Redirect: تمكنك من إعادة توجيه المستخدمين إلى صفحات مخصص عند تسجيل الدخول.
Logout Redirect: ترسل المستخدمين إلى صفحات مخصصة عند تسجيل الخروج.

تدوينات أخرى قد تهمك

  • كيفية تحسين الإستعلامات إلى قاعدة البيانات على ووردبريسكيفية تحسين الإستعلامات إلى قاعدة البيانات على ووردبريس
  • عرض آخر المستخدمين المسجلين في ووردبريسعرض آخر المستخدمين المسجلين على ووردبريس
  • كيفية إضافة النشر والتأليف لووردبريسكيفية إضافة حقوق النشر والتأليف لووردبريس
  • تنبيهات عبر البريد الإليكتروني عند حدوث تغييرات في موقعك 1تنبيهات عبر البريد الإليكتروني عند حدوث تغييرات في موقعك
  • إضافة nofollow إلى الروابط تلقائيا في ووردبريسطريقة إضافة خاصية nofollow للروابط الخارجية تلقائيا
  • نقل ووردبريس من نطاق إلى آخرطريقة نقل ووردبريس إلى نطاق و استضافة جديدين دون فقدان اﻷرشفة

عن سعيد البقالي

من مواليد 1984م بالمغرب, مطور قوالب وإضافات ووردبريس و مبرمج php بخبرة تفوق 8 سنوات، أكتب تدوينات في موقعي هذا بين الفينة و الأخرى حول تطوير الويب وووردبريس على وجه الخصوص منذ سنة 2012، لدي مساهمات في تطوير نواة ووردبريس والترجمة إلى اللغة العربية. أتمنا أن يروق لكم كل ما أقدمه.

أضف رأيك حول الموضوع


المرجو الكتابة باللغة العربية الفصحى لكي يفهم الجميع و شكرا

  1. hassan قال

    9 يونيو، 2014 بتوقيت 7:56 مساءً

    السلا عليكم أخي سعيد استفدت كثيرا من مدونتك القيمة
    المرجو مساعدتي في هذا المشكل
    نصبت قالب وقمت بجميع التغييرات الممكنة علية ولكن في أحد المربعات الجانية هناك رابط موقع القالب ومعلومات على المصمم لما أحدفه يتوقف القالب
    theme desavtivé
    المرجو مساعدتي علي تجاوز المشكلة

    رد
    • سعيد البقالي قال

      9 يونيو، 2014 بتوقيت 9:07 مساءً

      و عليك السلام اخي,
      يسعدني أن المدونة تعجبك و تفيدك.
      في ما يخص مشكلتك, يمكنني مساعدتك إذا كان القالب مجاني و مصدره مفتوح… اما إذا كان القالب عبارة عن نسخة مجانية لقالب مدفوع, يأسفني أن أقول لك انني لا أستطيع المساعدة لأن إزالة الروابط هو خرق لحقوق التأليف والنشر.

      رد
  2. hassan قال

    10 يونيو، 2014 بتوقيت 12:39 مساءً

    أخي سعيد القالب مجاني أريد فقط تخصيصه le personaliser

    رد
  3. قصي صالح قال

    8 يوليو، 2015 بتوقيت 9:12 صباحًا

    السلام عليكم
    عندي استفسار حقيقة انا جديد على الورد بريس
    تم تصميم موقع عربي بالورد بريس وأريد أضيف لغة إنكليزيه بأن كل شيء مكتوب بالعربي يتحول إلى إنكليزي
    أرجو المساعده وشكرا لك أخي الكريم

    رد

أضف رأيك حول الموضوع إلغاء الرد

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

التصنيفات

  • إضافات ووردبريس
  • تحسين الأرشفة في محركات البحث
  • شرحات ووردبريس
  • قوالب ووردبريس
  • مقالات و أخبار
@arabwordpress

الإشتراك في القائمة البريدية

اشترك في القائمة البريدية و توصّل بجديد الموقع على بريدك الإلكتروني، شرحات ومقالات حصرية في انتظارك!

نظيف من البريد المزعج ويمكنك حذف اشتراكك وقتما تشاء.

كل الحقوق محفوظة © 2012 | 2019 سعيد البقالي