logo

パレット - カラフルに🎨

Palette — ビジュアルページビルダー、デザインの専門知識は不要です。

ライブデモ パレットをダウンロード

Scroll

9.4. プレミアムアカウント用のページの作成。

24/09/2019, by mikhail

このレッスンでは、私たちのモジュールの機能を拡張し、登録ユーザーまたは特定のロールを持つユーザーだけが利用できるコンテンツを作成します。

コード例は github で見られます:

https://github.com/levmyshkin/drupalbook8

まず、drupalbook.permissions.yml モジュールフォルダーに新しい YML ファイルを追加することから始めましょう:

access premium pages:
  title: 'Access Premium pages'
  description: 'A custom permission for your pages.'
  restrict access: TRUE

次に、アクセス権ページに移動し、必要なロールに Premium コンテンツへのアクセスを設定します。私は登録ユーザーに対してこれを行います:

/admin/people/permissions

permission

次に、drupalbook.routing.yml で新しいルートを作成し、そこで新しい権限とコンテンツを表示する新しいメソッドを示します:

drupalbook.private_content:
   path: '/private-page'
   defaults:
     _controller: '\Drupal\drupalbook\Controller\FirstPageController::privateContent'
     _title: 'Private content'
   requirements:
     _permission: 'access premium pages'

新しいルートを追加した後、キャッシュをクリアする必要があります。

また、FirstPageController クラスに privateContent() メソッドを追加する必要があります:

/**
 * Returns a private page.
 *
 * @return array
 *   A simple renderable array.
 */
public function privateContent() {
  $element = array(
    '#markup' => 'Private content',
  );
  return $element;
}

これで、キャッシュをクリアし、私たちのページが未登録ユーザーにアクセスできないことを確認できます。

drupalbook

コード例は github で見られます:

https://github.com/levmyshkin/drupalbook8