让代码更简单

WordPress系统下禁止用户登录后台解决办法

重要:本文最后更新于2018-11-13 13:45:30,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

站长很想让用户也能写文章,但是由于技术不够,不能自己写前台投稿的表单代码,所以就用了网友们的插件,没错,本站就是用的ucenter&market插件。

在某某博客看这个插件的那一刻,说实话我就爱上了它,简直面面俱到啊!于是果断的找起了源码。功夫不负有心人,终于让我给找到了,成功装上之后,迫不及待的试了试所有功能,还算不错,不过让我有点失望的是,前台投稿居然不能使用媒体库,这就意味着前台投稿功能失去了一大半。

想了很久都没法解决,为了能让用户投稿,我打算给用户开放后台投稿的权限,于是理所应当的在投稿的地方加上http://xxxx/wp-admin/post-new.php超链接,刷新网站,点击,咦,怎么还是这个页面?输入地址http://xxxx/wp-admin回车,居然进不去后台,又跑到ucenter&market插件的个人中心去了,首先想到插件冲突,关掉插件后果然可以进入后台,为了能使用上传头像功能,我又舍不得这个插件,于是只好查找起这个“bug”是怎么出现的。半个小时后,在该插件的function.php文件中发现了这样的代码

复制
/* Prohibit none admin user visit admin page */
function um_redirect_wp_admin(){
 $url = um_get_current_page_url();
 if( (is_admin()&&!stripos($url,'media-upload.php')) && is_user_logged_in() && !current_user_can('edit_users') && ( !defined('DOING_AJAX') || !DOING_AJAX )  ){
 wp_redirect( um_get_user_url('profile') );
 exit;
 }
}
add_action( 'init', 'um_redirect_wp_admin' );

意思是如果不是管理员权限,都会跳转到当前页。

大手一挥,删掉!再次刷新网站,成功进入后台!

如果不是该插件引起的,请自行排查出现问题的文件,找到上面相似代码删除即可解决!

如果你想禁止用户使用后台,在相应文件中添加如上代码即可!

注:方法由代码狗提供,删除前请做好文件备份,以免代码出错!

感觉很棒!可以赞赏支持我哟~

0 打赏

评论 (0)

登录后评论
QQ咨询 邮件咨询 狗哥推荐