我正在尝试使用阻止管理仪表板访问wp_redirect()
.
但是使用current_user_can(\'edit_post\')
是意外的。
请参阅下面我的完整功能。。。
/**
* user constructor method.
*/
public function __construct()
{
// block admin dashboard access
add_action( \'admin_init\', array( $this , \'block_admin_access\' ) );
}
/**
* block admin dashboard access to users who cant edit posts
*/
public function block_admin_access () {
// if users cannot edit posts
if( ! current_user_can(\'edit_post\') ) {
// redirect user to home page
wp_redirect( get_home_url() );
}
}
当我以管理员用户身份登录时,上面的代码会阻止我访问仪表板。管理员完全可以编辑帖子,那么为什么上面的代码会将我从仪表板重定向到别处呢?
当我使用current_user_can(\'edit_post\')
在前端,这种行为是正常的。
有人知道为什么会这样吗?