Drupal 8.を使用しています。Viewsモジュールでブロック(hotel)を作成しました。コンテンツタイプのフィールドにブロックへの参照を追加したいと思います。ただし、追加できるのはカスタムブロックのみですhotelブロックは、ビューモジュールで作成されたため、新しいフィールドに追加できません。
ビューブロックへの参照をフィールドに追加するにはどうすればよいですか?または、カスタムブロックでビューブロックを変換するにはどうすればよいですか?
ビューとエンティティ参照の両方がDrupal 8コアの一部になりました。
に行く
1)ビューを構成し、タイプがページまたはブロックのビューを作成します。別のディスプレイで、エンティティ参照をディスプレイとして選択します。
2)フォーマット設定で、このビューの検索フィールドを選択し、ビューに表示するフィールドを選択します。次に、ビューを保存します。
3)構造>コンテンツタイプ>参照フィールドを追加するコンテンツタイプに移動します。タイプコンテンツの新しいフィールドを作成し、希望するラベルを設定して、保存して続行します。
4)参照するアイテムのタイプでは、「ビュー」を選択します。フィールド設定を保存します。
5)フィールド設定の参照タイプで、[ビュー:エンティティ参照ビューによるフィルター]を選択します。 [エンティティの選択に使用するビュー]で、エンティティ参照ビューを選択して保存します。
6)この参照フィールドのコンテンツタイプの表示の管理では、エンティティへのリンクまたはレンダリングされたエンティティを選択できます。レンダリングされたエンティティを選択し、表示設定の管理を保存しました。
7)次に、コンテンツタイプのコンテンツを作成し、エンティティ参照フィールドで、参照するエンティティの名前を指定します。
このモジュール Viewfield があり、現在Drupal 7&8(alphaバージョン))の両方をサポートしています。
または、安定したD8バージョンの [〜#〜] eva [〜#〜] を使用します。これは、ビュー表示をエンティティにアタッチすることで、より強力な別のアプローチを使用し、構成可能なフィールドとして表示されます。エンティティの表示モード。
または、単にビューをテンプレート変数に追加します。たとえば、プリプロセスフックで:
$variables['view'] = views_embed_view('hotel', 'block_display');