CONTENTS
EVAに動的なタイトルを突っ込みたい!
こんにちは。
ぴころじーの竹川です。
極めて多い事案ではありませんが、数件の案件に1つくらいでてくる事案がこの前ありました。
この件、日本語サイトはもちろん、海外サイトにもピンポイントの記事が見当たりませんでしたので、こちらにご紹介します。
タイトルにもある通り、「EVAに動的なタイトルを突っ込みたい!」というものです。
EVAとはなんぞや?
EVA(Entity Views Attachment)(注釈:某アニメではありません)という、Drupalのモジュールです。過去にも本サイトの記事に取り上げているのでご参照いただければと存じます。ざっくり申し上げると、ノード、タクソノミー、カスタムブロック、ユーザなど、表示管理というタブを持つエンティティに、任意のビューを挿入できるモジュールです。そして、最大の利点のひとつがそのエンティティに関連した内容を表示できるということになります。
なお、使い方はこちらの過去記事をご参照ください。(本記事は使い方に関することではないので・・・)
EVAにタイトルを挿入したくなるケース
いくつかあると思いますが、今回は例として以下のようなものを用意しました。
「関連記事」という固定のタイトルではなく、「○○の関連記事」というタイトルにしたい!
結構、心当たりがあるのではないでしょうか・・・?かゆいところに手が届きそうで届かないパターンです。私も最初は気づかなかったことですが、EVAではこれができます。
動的タイトルの設定
記事件数がいくつかあるので、ウチのサイトに実際に実装してみることにします!
現在の関連記事はこのような表示になっています。
そして、関連記事を表示するたのEVAがこちらです。
タイトルには、「関連記事」と固定で設定していることが分かります。
ここで、タイトルにも設定できる動的な内容を確認します。
フィールドの表示内容(ここではコンテンツ:タイトル)をクリックします。
結果の書き換えタブを展開し、「このフィールドの出力を、指定の文字列で上書き」にチェックを入れます。
さらに、その下にある置換パターンのタブを開いてみてください。
このタブの中の置換トークンをタイトルにも設定可能です。意外と気づきません。・・・といいますか全く気づきません・・・。
ここで使うのは、{{ arguments.nid }}です。早速設定してみます。(ダイアログウィンドウはキャンセルで閉じてください。)
タイトルをクリックします。
置換トークンを使い、タイトルを編集します。編集後、適用をクリックします。
ビューを保存し、反映させます。
表示を確認する
一番上の例で示した記事のタイトルは「URLエイリアスの考え方」です。実際に再読み込みして表示してみます。
実際のケースとしては、挿入対象がノードであったり、タクソノミーであったりとさまざまです。それによって、設定できる置換トークンは変わってくるので、これを入れればいい!と決めるのではなく、使えるかどうかを確認することをお勧めします。いろいろ試していると、それだけでも勉強になります。
本日も良きDrupalライフを!北海道からぴころじーがお届けしました。