簡體   English   中英

Wordpress登錄后將特定用戶角色重定向到特定位置

[英]Redirect specific user role to specific location after Wordpress login

我需要將商店經理用戶重定向到我在functions.php中添加的訂單頁面。php 但沒有用

add_action('init', 'edit_for_shop_manager');

function edit_for_shop_manager(){

    $user = wp_get_current_user();

   if(wc_user_has_role($user,'shop_manager')){

       function admin_default_page() {
           return home_url().'/wp-admin/edit.php?post_type=shop_order';
       }
       
       add_filter('login_redirect', 'admin_default_page');

   }

}

請改用以下內容:

add_filter( 'login_redirect', 'login_redirect_shop_manager_on_orders_list', 10, 3 );
function login_redirect_shop_manager_on_orders_list( $redirect_to, $request, $user ) {
    $defined_user_role = 'shop_manager'; // The defined user role

    if( isset($user->roles) && is_array($user->roles) && in_array( $defined_user_role, $user->roles ) ) {
        $redirect_to = admin_url('edit.php?post_type=shop_order'); // Custom redirection url

        wp_safe_redirect( $redirect_to ); // Force redirection
        exit(); // Mandatory to avoid errors
    }
    return $redirect_to;
}

代碼進入您的活動子主題(或活動主題)的 function.php 文件。 它應該有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM