我的网站不需要用户登录功能。只有系统管理员才能发布新内容。如何在Drupal中删除用户注册和登录?
谢谢!
答案 0 :(得分:32)
虽然技术上可以删除登录功能,但您不应该这样做,因为那样您的管理员就永远无法登录该站点。
为了删除注册功能,您只需浏览admin/user/settings
(适用于Drupal 6)或admin/config/people/accounts
(适用于Drupal 7)并选择“仅限网站管理员可以创建新用户”帐户“选项。
答案 1 :(得分:16)
虽然jhedstrom的答案确实有效,但我特别发现它没有完全解决这个问题。
这是从Drupal 7上的站点中删除登录表单的简单方法。
首先,让我们创建一个名为管理的新简单页面。只需转到内容 - 添加内容 - 基本页面。输入您想要的任何详细信息,例如标题,正文等。只需确保在网址路径设置下指定了管理的常用别名,我使用了 admin 。
第二步,让我们确保登录表单仅显示在我们刚创建的 admin 页面上。导航到结构 - 块 - 用户登录(注意块名称可能因安装而异),然后点击配置。在可见性设置下,选择仅列出的页面选项,以便该块仅显示您在输入中指定的页面,并输入您在上述步骤中设置的别名(的管理)。
最后,让我们确保只有管理员可以通过遵循jhedstrom的建议来创建帐户。转到配置 - 人员 - 帐户设置,然后在注册和取消下,确保为谁可以注册帐户选择仅限管理员的框?强>选项。
我认为这是一种更好,更详细的方法,可确保不显示登录表单,因为您不需要人们在您的网站上创建帐户。
答案 2 :(得分:0)
您可以使用hook_menu()覆盖它,移动任何其他适合管理需求的登录页面
答案 3 :(得分:0)
您可以一起禁用所有表单。在自定义模块中:
function MYMODULE_form_alter(&$form, &$form_state, $form_id) {
switch($form_id) {
case 'user_login':
case 'user_register_form':
$form['#access'] = FALSE;
break;
}
}
根据您的需要,您可以创建自定义页面并在其中设置登录块,以便您和其他管理员可以登录或安装HybridAuth模块以允许访问者仅通过社交登录和注册新帐户媒体第三方。
答案 4 :(得分:0)
您可以使用 Disable Login Page 模块完全禁用一般公众的登录页面。只有有权访问密钥/值对的网站管理员或站点管理员才能访问登录页面。其他所有人都会在用户/登录页面被拒绝访问。这将适用于 Drupal 8 和 Drupal 9。