如何解决登录Wordpress后将特定用户角色重定向到特定位置
我需要将商店经理用户重定向到订单页面
我在functions.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文件。应该可以。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。