ユーザーがエンティティブラウザモジュールを使用してDrupalエンティティを選択できるようにする

公開: 2022-02-16

このブログ投稿では、Drupalユーザーが「エンティティブラウザー」モジュールを使用してエンティティを選択できるようにする方法を紹介します。

このチュートリアルは、書評サイトを構築しているOSTrainingの顧客から要求されました。 顧客は、この機能を作成できるようにエンティティブラウザを使用したいと考えていました。

  • このサイトには、書籍と書評の2つのコンテンツタイプがあります。
  • ユーザーが新しい書評を作成するとき、ユーザーはビューを使用して、レビューしている本を検索して選択できます。 たとえば、「戦争と平和」を確認している場合は、既存の「戦争と平和」ノードを検索できます。
  • 書評が公開されると、選択したノードが書評内に埋め込まれます。

この顧客の要求は、エンティティブラウザモジュールの助けを借りて達成することができます。 このモジュールは、Drupalユーザーがノードをサイトの他の部分に埋め込むために使用できるブラウザーを提供します。

このチュートリアルでは、サイト構築の演習を行い、エンティティブラウザモジュールの使用方法を示します。


ステップ1。 必要なモジュールをインストールします

エンティティブラウザを使用するには、エンティティブラウザとカオスツールのモジュールをインストールする必要があります。

これらのモジュールをダウンロードしてインストールするには、お好みの方法を使用してください。 私はComposerを使用しています:

 composer install drupal/entity_browser
 composer install drupal/ctools

ユーザーがエンティティブラウザモジュールを使用してDrupalエンティティを選択できるようにする

これにより、モジュールがDrupalインストールに配置されます。 その後、[拡張]をクリックし、両方のモジュールを検索して有効にし、[インストール]をクリックします。


ステップ2。 分類用語を作成する

この例では、本はジャンル別に分類されているため、「本のジャンル」という語彙が必要になります。

  • [構造]> [分類法]> [語彙の追加]をクリックします。
  • 語彙に適切な名前と説明を付けます。
  • [保存]をクリックします。

  • [リスト]タブで、[用語の追加]をクリックします。

次の用語を追加します。

  • 冒険
  • クックブック
  • ドラマ
  • ファンタジー
  • ホラー


ステップ3。 ブックコンテンツタイプを作成する

次に、本のコンテンツタイプを作成します。 前の手順で作成した本のジャンルの分類法を使用します。

  • [構造]> [コンテンツタイプ]> [コンテンツタイプの追加]をクリックします。
  • Bookというコンテンツタイプを作成し、これらのフィールドをデフォルト設定で追加します。

テーブル

  • もう一度[フィールドの追加]をクリックします。
  • [参照]の下のドロップダウンリストで、[分類用語]を選択し、適切なラベルを付けます。
  • [保存して続行]をクリックします。

  • 許可される値の数を1のままにして、[フィールド設定の保存]をクリックします
  • [編集]画面の一番下までスクロールして、コンテンツタイプで参照する語彙を選択します。 この場合:本のジャンル
  • [設定を保存]をクリックします

  • [フォーム表示の管理]タブをクリックします。
  • [本のジャンル]フィールドを探し、そのウィジェットを[チェックボックス/ラジオボタン]に変更します。
  • [保存]をクリックします。


ステップ4。 ブックコンテンツを作成する

次に、5〜10冊の本を作成し、それぞれを特定のジャンルに割り当てます。

  • [コンテンツ]> [コンテンツの追加]> [予約]をクリックします。


ステップ5。 ビューを作成する

サンプルコンテンツを作成したら、ビューを作成する準備が整いました。 このビューはエンティティブラウザに表示されるため、書評を作成しているときに本を選択できます。

  • [構造]> [ビュー]> [ビューの追加]をクリックします。
  • AvailableBooks」というタイトルのビューを作成します。
  • タイプBookコンテンツを表示します。
  • ページとブロックの設定をオフのままにします。
  • [保存して編集]をクリックします。

  • [表示]セクションの下にある[追加]ボタンをクリックします。
  • エンティティブラウザを選択します。

  • SORT基準の横にある[再配置]をクリックして、desc基準で作成されたコンテンツ:を削除します。
  • [適用]をクリックします。
  • FILTER基準の横にある[追加]をクリックして、[本のジャンル]フィールドを選択します。
  • [追加]をクリックして、フィルター条件を構成します。

  • 書籍のジャンルの語彙が選択されていることを確認します。
  • 選択タイプドロップダウンに変更します。
  • [適用]をクリックして続行します。

  • [このフィルターを訪問者に公開する]をオンにして、訪問者がフィルターを変更できるようにします。
  • 演算子の1つとして選択されていることを確認してください。
  • [適用]をクリックします。

  • タイトルフィールドをSORT基準に追加します。
  • デフォルトの構成を昇順で並べ替えたままにして、「適用」をクリックします。

これにより、書籍がアルファベット順に表示されます。 ビューに表示するには、さらにいくつかのフィールドを挿入する必要があります。 現時点では、使用可能なノードタイトルのみがあります。

  • [フィールド]セクションの[追加]ボタンをクリックします。
  • ブックカバーフィールドを探し、[フィールドの追加と構成]をクリックします。

  • [画像スタイル(サムネイル100x100) ]を選択し、[適用]をクリックします。
  • エンティティブラウザの一括選択フォームフィールドを追加するには、もう一度[追加]をクリックします。
  • [フィールドの追加と構成]をクリックします。

  • [適用]をクリックします。

エンティティブラウザを使用する場合は、このフィールドの使用が必須であるため、特に注意してください。

  • ビューの形式を、たとえばグリッドに変更します。
  • [適用]を2回クリックします。

ビューUIのビューの構成は、次の画像のようになります。 ビューを保存するには、[保存]をクリックします。


ステップ#6。 エンティティブラウザモジュールを構成する

このステップでは、このチュートリアルのキーモジュールの設定であるエンティティブラウザを選択します。

  • [構成]> [エンティティブラウザ]をクリックします

  • [エンティティブラウザの追加]をクリックします。
  • ブックブラウザなど、適切なラベルを付けます。
  • 表示プラグインとしてiFrameを選択します。
  • [次へ]をクリックします。

  • [エンティティブラウザを自動的に開く]をオンにして、[次へ]をクリックします。

  • ウィジェット構成ページが表示されるまで、さらに2回「次へ」をクリックします。
  • ビューウィジェットプラグインを選択するには、ドロップダウンリストをクリックします。
  • ウィジェットのラベルを変更します(例:「本を選択してください」)。
  • 手順5で設定したビューを選択します。
  • [完了]をクリックします。


ステップ7。 書評コンテンツタイプを作成する

私たちのサイトはほぼ完成しています。 終了する前に、書評家が使用できるコンテンツタイプを作成する必要があります。

  • [構造]> [コンテンツタイプ]> [コンテンツタイプの追加]をクリックします。
  • このコンテンツタイプに書評という名前を付けます。
  • 新しいフィールドを追加し、[参照]セクションから[コンテンツ]を選択します。
  • このフィールドに適切なラベルを付けます(例:本)。
  • [保存して続行]をクリックします。
  • [参照するアイテムの種類]オプションで、[コンテンツ]を選択します。
  • [フィールド設定の保存]をクリックします。

  • [設定を保存]をクリックします。
  • このコンテンツタイプの[フォーム表示の管理]タブをクリックします。
  • 参照フィールドを見つけて、そのウィジェットをエンティティブラウザに変更します。
  • 右側の歯車をクリックして、[ブックブラウザ] (または手順6で作成したブラウザと呼んでいるもの)を選択します。
  • [更新]をクリックします。
  • [保存]をクリックします。

エンティティラベルまたは完全にレンダリングされたエンティティのみを表示するオプションもあることに注意してください。 ビューモード(ティーザーなど)を使用して、この新しい書評コンテンツタイプでエンティティを表示できます。


ステップ8。 書評を作成する

これで、私たちのサイトはほぼ使用できるようになりました。 書評を作成して、すべてが正しく機能しているかどうかを確認しましょう。

  • [コンテンツ]> [コンテンツの追加]> [書評]をクリックします。
  • このノードに適切なタイトルと本文を付けます。
  • さらに下にスクロールすると、THE BOOK(フィールドの名前)と呼ばれる折りたたまれたセクションが表示されます。
  • このフィールドをクリックすると、この書評で参照している本を選択できるエンティティブラウザが表示されます。
  • さらに、上部に露出フィルターがあるので、1つのジャンルにのみ関連する本を選択できます。
  • ジャンルを選択し、[適用]をクリックします。

ブラウザには、このジャンルの本のみが表示されます。

  • 書籍を選択し、 [エンティティの選択]をクリックします。

  • エンティティを埋め込んだ後、[保存]をクリックすると、参照されているブックエンティティがブックレビューノードに表示されます。

最終結果

このチュートリアルでは、Drupal8の「エンティティブラウザー」モジュールの機能を示しました。気に入っていただけたでしょうか。 読んでくれてありがとう!