Entity Reference Facet Link

Entity Reference Field 用のフィールドフォーマッターを提供し、参照先エンティティをデフォルトの表示ページではなくファセット検索ページへリンクさせます。

entity_reference_facet_link
2,632 sites
29
drupal.org

インストール

Drupal 11, 10, 9, 8 v2.0.2
composer require 'drupal/entity_reference_facet_link:^2.0'

概要

Entity Reference Facet Link は、Entity Reference Field(タクソノミー Term Reference Field を含む)用の特殊なフィールドフォーマッタープラグインを提供します。これらのフォーマッターは、Entity Reference Field の表示を、エンティティのデフォルト表示ページへのリンクではなく、参照先エンティティでフィルタリングされたファセット検索ページへのリンクに変換します。

このモジュールは、ファセット検索機能を持つ Drupal サイトでよくあるユーザビリティの問題を解決します。Views、Search API、Facets モジュールを使用して作成した、タクソノミー Term でコンテンツをフィルタリングするファセット検索ページがある場合、Node に表示されたタクソノミー Term をクリックすると、通常はその Term のデフォルト表示ページに移動します。しかし、ユーザーはその Term でフィルタリングされた検索ページに戻ることを期待することが多いです。このモジュールはまさにその機能を提供します。

このモジュールは、ファセットに設定されているものと同じ URL プロセッサーを使用して URL を自動生成するため、Facets Pretty Paths などのモジュールとシームレスに連携します。フォーマッター設定からファセットを選択するだけで、モジュールがすべての URL フォーマットを自動的に処理します。

Features

  • Entity Reference のラベルをファセット検索ページへのクリック可能なリンクとして表示する「Facet link」フィールドフォーマッターを提供
  • ファセット検索ページの生の URL のみを表示する「Facet URL」フィールドフォーマッターを提供
  • 設定対象のフィールドに一致するファセットのみを表示するよう、選択可能なファセットを自動的にフィルタリング
  • Facets Pretty Paths を含む、Facets モジュールで使用されるすべての URL プロセッサーをサポート
  • 参照先エンティティやファセット設定が変更された際のキャッシュ無効化を適切に処理
  • タクソノミー Term Reference Field を含む、すべての Entity Reference Field タイプで動作

Use Cases

記事ページのタクソノミー Term リンク

タクソノミー Term(カテゴリやトピックなど)でタグ付けされた記事を持つブログがあります。これらの Term で記事をフィルタリングできるファセット検索ページがあります。記事上のタクソノミー Term リンクを Term のデフォルトタクソノミーページではなく、その Term が事前選択されたファセット検索ページにリンクさせたい場合、タクソノミー Term フィールドの表示を「Facet link」に設定し、検索ページのファセットを選択します。

フィルタリングされたコンテンツリストへの著者リンク

サイトのコンテンツに著者の Entity Reference Field があります。著者ファセットを持つファセット検索ページがあります。このモジュールを使用すると、コンテンツ上の著者名がその著者でフィルタリングされた検索ページに直接リンクし、その著者のすべてのコンテンツを表示できます。

EC サイトでの商品カテゴリナビゲーション

ファセット商品検索を持つ Drupal Commerce サイトで、商品ページの商品カテゴリ参照をそのカテゴリでフィルタリングされた検索ページにリンクさせ、シームレスなブラウジング体験を提供できます。

コンテンツタイプでフィルタリングされた Views

共有エンティティを参照する複数のコンテンツタイプがあります。このモジュールを使用すると、それらのエンティティ参照を適切にフィルタリングされたファセット検索ページにリンクさせ、ユーザーが関連コンテンツを簡単に発見できるようになります。

Tips

  • ファセットにはユニークでわかりやすい名前を付けてください。特に同じフィールドが複数の検索ページでファセットとして使用されている場合、フォーマッター設定で簡単に識別できます。
  • モジュールはキャッシュタグを自動的に処理するため、参照先エンティティのラベルが変更されたり、ファセット設定が変更されたりするとリンクが更新されます。
  • カスタムテーマ設定や JavaScript の目的で URL のみが必要な場合は、「Facet URL」フォーマッターを使用できます。

Technical Details

Troubleshooting 3
フォーマッター設定のドロップダウンにファセットが表示されない

フォーマットしようとしているフィールドと同じフィールド用に設定されたファセットを Facets モジュールで作成していることを確認してください。モジュールは現在のフィールドに一致するファセットのみを表示します。

ファセットソース(Views など)のパスを変更してもフィールドリンクが更新されない

サイトのキャッシュを手動でクリアしてください。現在、ソースパスが更新された際にフィールドの表示キャッシュを自動的に無効化する方法はありません。

生成される URL がファセットの URL 形式と一致しない

モジュールはファセットに設定されているものと同じ URL プロセッサーを使用します。ファセットの設定で正しい URL プロセッサーが使用されていることを確認してください。