Scroll
9.4. プレミアムアカウント用のページの作成。
このレッスンでは、私たちのモジュールの機能を拡張し、登録ユーザーまたは特定のロールを持つユーザーだけが利用できるコンテンツを作成します。
コード例は 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

次に、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;
}
これで、キャッシュをクリアし、私たちのページが未登録ユーザーにアクセスできないことを確認できます。

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