في هذه التدوينة سنرى طريقة إعادة توجيه المستخدمين إلى صفحات مختلفة عند تسجيل الدخول حسب رتبة المستخدم أو اسمه.
في المثالين سنستعمل فيلتر login_redirect الذي يصلح تحديداً لتغيير المسار عند تسجيل الدخول في ووردبريس.
إعادة توجيه المستخدمين حسب الرتب.
إذا كنت تريد إرسال مديرين، محررين، كتَّاب، مشتركين… إلى صفحات محددة من قبلك (كل واحد إلى صفحة مختلفة) فقط عليك إضافة هذا الكود إلى ملف functions.php
او إلى إضافتك المخصصة.
function sb_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' );
} elseif {
return home_url();
}
}
add_filter( 'login_redirect', 'sb_custom_login_redirect', 10, 3 );
إعادة توجيه المستخدمين حسب اسم المستخدم.
إذا كنت تريد إعادة توجيه المستخدم حسب اسمه (المستعمل في تسجيل الدخول) تحديداً وليس حسب رتبته، في الأول عليك تحديد إلى أي صفحة سيتم إرسال كل واحد.
مثلا، في موقع شركة يستعمل ووردبريس، قد يكون من المفيد توجيه مستخدمين معيَّنين إلى صفحات مخصصة تتضمن معلومات حول القسم الذي يهتم به كل واحد عوض الذهاب إلى الصفحة الرئيسية للوحة التحكم.
function sb_custom_login_redirect( $redirect_to, $request, $user ) {
global $user;
$userredirect = esc_attr( $user->user_login );
if ( $userredirect === 'admin' ) {
return $redirect_to;
} elseif ( $userredirect === 'said' ) {
return home_url( '/users/said/' );
} elseif ( $userredirect === 'mohammed' ) {
return home_url( '/users/mohammed/' );
} else {
return home_url();
}
}
add_filter( 'login_redirect', 'sb_custom_login_redirect', 10, 3 );
بعد ذلك من الواجب وضع رابط لصفحة تسجيل الدخول [code lang=”php” inline=true]wp-login.php[/code] في مكان ما من الموقع ليتمكن المستخدمون من الدخول، أو إضافة نموذج تسجيل الدخول بواسطة wp_login_form()
.
هذه الوظيفة تقوم بإنشاء نموذج تسجيل الدخول (login form) بسيط لكي يستعمل في أي مكان من الموقع، يمكننا وضعه في sidebar.php
مثلاً وإعطائه تنسق معيّن عن طريق CSS.
<?php wp_login_form(); ?>
إعادة توجيه المستخدمين بواسطة إضافة.
Peter’s Login Redirect: تمكنك من إعادة توجيه المستخدمين عند تسجيل الدخول وعند تسجيل الخروج.
WordPress Login Redirect: هذه الإضافة تقوم بتوجيه المستخدمين من رتبة مشترك إلى الصفحة الرئيسية للموقع.
Login Redirect: تمكنك من إعادة توجيه المستخدمين إلى صفحات مخصص عند تسجيل الدخول.
Logout Redirect: ترسل المستخدمين إلى صفحات مخصصة عند تسجيل الخروج.