web-dev-qa-db-ja.com

ユーザー登録/ログインを削除する方法Drupal

私のウェブサイトはユーザーログイン機能を必要としません。システム管理者のみが新しいコンテンツを投稿できました。 Drupalでユーザー登録を削除してログインするにはどうすればよいですか?

ありがとう!

15
user503853

ログイン機能を削除することは技術的には可能ですが、削除しないでください。管理者がサイトにログオンできなくなるためです。

登録機能を削除するには、admin/user/settings(Drupal 6の場合)またはadmin/config/people/accounts(Drupalの場合))を参照する必要があります。 = 7)そして、「サイト管理者のみが新しいユーザーアカウントを作成できる」オプションを選択します。

32
jhedstrom

Jhedstromの回答は機能しますが、特に問題に完全に対処していないことがわかりました。

Drupal 7のサイトからログインフォームを削除する簡単な方法は次のとおりです。

まず、Adminという名前の新しい単純なページを作成しましょう。 [コンテンツ]-[コンテンツの追加]-[基本ページ]に移動するだけです。タイトル、本文など、必要な詳細を入力します。URLパス設定で、管理用の共通エイリアスを指定していることを確認してくださいadmin

2番目のステップでは、ログインフォームが作成したばかりのadminページにのみ表示されることを確認しましょう。 [構造]-[ブロック]-[ユーザーログイン]に移動し(ブロック名はインストールごとに異なる場合があることに注意してください)、構成をクリックします。 可視性設定の下でオプションリストされたページのみを選択して、入力で指定したページに対してのみブロックが表示されるようにします。上記の手順で設定したエイリアスを入力します(admin)。

最後に、jhedstromの提案に従って、管理者だけがアカウントを作成できるようにします。 [構成]-[ユーザー]-[アカウント設定]に移動し、登録とキャンセルで、管理者のみのボックスが選択されていることを確認します。 アカウントを登録できるのは誰ですか?オプション。

これは、サイトでアカウントを作成する人が必要ないことを考えると、ログインフォームが表示されないようにするためのより優れた詳細なアプローチだと思います。

16
daniel_c05

Hook_menu()を使用してオーバーライドし、管理上のニーズに適した他の場所にログインページを移動できます

0
Jokerius

フォームをまとめて無効にすることができます。カスタムモジュールの場合:

function MYMODULE_form_alter(&$form, &$form_state, $form_id) {
  switch($form_id) {
    case 'user_login':
    case 'user_register_form':
      $form['#access'] = FALSE;
    break;
  }
}

必要に応じて、カスタムページを作成し、そこにログインブロックを設定して、自分や他の管理者がログインできるようにするか、 HybridAuth モジュールをインストールして、訪問者がソーシャル経由でのみログインして新しいアカウントを登録できるようにします。メディアサードパーティ。

0
Francisco Luz