【问题标题】:Wordpress new user goes directly to admin panelWordpress 新用户直接进入管理面板
【发布时间】:2012-06-05 12:57:16
【问题描述】:

我创建了一个 wordpress 网站,用户可以在其中注册以发布博客。问题是,在注册和登录后,用户直接进入 wp-admin 面板。这不应该是行为。

如何防止已登录的用户访问 wp-admin 面板?

请帮忙。

【问题讨论】:

  • 您是否正确设置了新用户默认角色字段?例如。 “订阅者”...
  • 是的,但它应该是网站的行为吗?我的意思是,为什么用户应该看到带有仪表板的 wordpress 顶部菜单。
  • 我认为 WP 就是这样设计的。我只是尝试了一下,并创建了一个 Subscriber Only 用户,我使用该用户登录,然后唯一可见的选项是整个仪表板中的 Profile 页面。

标签: wordpress


【解决方案1】:

这也将使所有不是管理员的人都远离后端。

把它放在你的functions.php文件的顶部。

<?php
if(is_admin() && !current_user_can('administrator'))
{
    wp_redirect( home_url(),302);
    exit;
}
?>

只需将 home_url() 替换为您希望他们在登录后访问的任何 url。

拉蒙: 变更日志:将 301 重定向更改为 302 重定向,以修复使用多个帐户(一个具有管理员权限)时的浏览器缓存问题。 如果您一开始没有登录,后来您以管理员身份登录,您的浏览器很可能会记住您的重定向,默认情况下这是 301。

【讨论】:

    【解决方案2】:

    下载这个插件,http://wordpress.org/extend/plugins/theme-my-login/

    安装并激活插件,从此用户将看不到 wp-admin 登录页面。此外,为了防止管理仪表板访问,请转到设置->主题我的登录。在 General->Modules 选项卡下,启用自定义重定向。

    现在在“重定向”选项卡中,您可以为不同的角色设置自定义登录页面,该页面可以设置为指向您的主页。因此,登录后,他将被定向到您的主页。

    并使用这个小技巧来隐藏屏幕顶部的管理栏: 转到外观->编辑器->functions.php

    在某处添加这个 sn-p:

    //Snippet Begins
    if (!current_user_can('administrator')) :
    show_admin_bar(false);
    endif;
    //Snippet Ends
    

    然后就可以了。 :)

    【讨论】:

      【解决方案3】:

      这样的?这将为除管理员用户之外的任何人(!)重定向 wp-admin。 http://www.mijnpress.nl/blog/deny-wp-admin-for-non-administrator-users/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-09-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-26
        • 2016-11-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多