前項で、Drupalのタクソノミーについて概要を説明しました。今回は、実際の使用例を見て行きます。
タクソノミーについておさらいしてみます。
タクソノミーの概念
- タクソノミーは記事を仕分けする為のラベルである。
- 複数のタクソノミーを目的に応じて設定する
- タクソノミーを使用するには、ボキャブラリー > タームの設定を行い、タームがタグやカテゴリーとして機能する
- 設定したタームを使用するには、使用するコンテンツタイプのフィールドにボキャブラリーを指定する必要がある。
- 記事にタームを持たせる事で、タクソノミーのリストページが生成されカテゴリーリストとして利用出来る。
- ビューでタクソノミーを抽出条件にしてしボキャブラリーやタームをフィルタリング条件にすることで、より自由なリスト化が可能である。
作成した記事を例に使用例を見て行きましょう。
記事にラベルを貼り仕分けするとどうなるかを見てみましょう。
私のサイトの記事は大まかに2つのテーマで記事を書いています。
- Drupalの学習を兼ねてWebsiteを構築する過程の備忘録 > Creation
- ファッションや古着などをテーマにした記事 > Life Style
この2つのテーマにそれぞれ、CreationとLife Styleというタームを設定します。
Life Styleの記事を書く場合、Life Styleのコンテンツタイプを選択し記事を書きます。記事を書いて公開する前にタグのフィールドでLife Styleを選択します。
実例として
の例をみて見ます。公開したページの下部に以下の表示があります。
投稿日: 2024-10-08
投稿者: S.Takeda
タグ: Life style
記事内容: Photo Articles.
店舗: Leica Ginza Store
この表示のタグ、記事内容、店舗がタクソノミーになります。
タグ=ボキャブラリー: Life style=ターム
記事内容=ボキャブラリー: Photo Articles.=ターム
店舗=ボキャブラリー: Leica Ginza Store=ターム
この記事のコンテンツタイプのフィールドにタクソノミーで設定したボキャブラリーのフィールドを割り当てています。記事を作成する際に、CKEditorなどと一緒にフィールドが表示されています。表示されたボキャブラリーのフィールドを選択すると補完機能で登録してあるタームが表示されるので記事内容に応じたタームを選択します。記事作成時にタームの選択をする事で記事に選択したタームが表示されます。
ページ下に設定したタームがリンク表示されています。リンクをクリックすると同一のタームを選択した記事が一覧で表示されます。これがタクソノミーの基本的な使い方になります。
上記の記事内にタクソノミー要素を持たせて、指定するタームを表示させると、一般的に言われるタグの要素として使用出来ます。前項で書きましたが、タグの基本的な考え方として、階層を持たない事があります。ブログなどでよく見るタグの一覧をタグクラウドといった機能として使用していますがこれは、記事とは別のページ内の別フィールドに登録されたタグを一覧表示する機能となっています。
私自身のサイト構築の考えに、小規模なサイトであるのでカテゴリーを増やしすぎないという事があり、タグ要素を細かく大量にサイトに設置することはしないのでタグクラウドの必要性はないのですが、当サイトの記事が増えてきたら、閲覧者が見たい記事を探しやすくする事ができるので設置を考えて行きます。
投稿日: 2024-10-08
投稿者: S.Takeda
タグ: Life style
記事内容: Photo Articles.
店舗: Leica Ginza Store
上記のタグ、Photo Article. Leica Ginza Storeという記事に設定したタームがタグとしての機能を持っています。
タグという用語でありますが、ページ上に記事に関連したラベルを設置することで、同一のラベルが設定されている記事をリスト化し表示させる事が出来ます。機能の目的として、閲覧者に関連記事を見てもらったり、カテゴリーとして分けるほどではないキーワードを整理することに用いられています。
設定したタームをメニューに一覧として設置することでカテゴリーとしての機能を持たせる事が出来ます。私のサイトで言えば、トップナビゲーションにカテゴリーを選択できるナビゲーション機能を持たせています。
Top ナビゲーションメニュー
|-- Home
|
|-- Life Styleの記事
| |-- 全ての記事 | ビューにて抽出条件をタクソノミー > タグ >Life Styleとしてページを作成
| |-- 古着の記事 | 記事内容 > Old-Clothes Articles.の表示結果
| |-- Fashionの記事 | 記事内容 > Fashion Articles.の表示結果
| |-- 時計の記事 | 記事内容 > Watch Articles.の表示結果
| |-- 写真の記事 | 記事内容 > Photo Articles.の表示結果
| |-- お勧めのお店 | 記事内容 > Shop List.の表示結果
リンク先は、タクソノミーで設定した各タームのリストページを使用しています。全ての記事はビュー作成していますがビューでタクソノミー機能を使う方法は別途ビューの解説で行いますので今回は割愛します。
同じタクソノミー要素ですが、記事から関連記事を探す為のタグ機能としても、メニューからカテゴリーを探すカテゴリーリストとしても利用しています。全ての記事にビュー機能を使っていますが、タクソノミーのリンクと同様の内容にしています。これはメニューリストにタクソノミーの表示結果を利用してもよいのですが、いくつかビューを使うメリットがあります。ビューについては別記事でまとめます。
タクソノミーを一般的なタグやカテゴリーとしての使用だけでなく、別の機能として使って見ます。
タクソノミーの活用例として、私は店舗紹介のページに使用しています。
記事内に店舗のボキャブラリーを設定し店舗をタームとして使用しています。タクソノミーの表示結果にフィールドを自由に設定できると前項で説明しましたがデフォルトでリストビューの前に説明というフィールドが用意されています。ここがHTMLの要素を持っていますのでここにお店の情報を入れて、このお店で購入した商品の記事をリストビューで表示しています。
このページを作成しているメリットに、お店のページに購入した商品の記事が自動的に追加されて行きます。ビューを使ったり、ブロックレイアウトを利用しても可能でありますが、管理項目が増えてしまいます。タクソノミーのタームにお店を設定するだけでお店の紹介と関連する記事を一度に処理できますので効率的に管理出来ます。
まだ解決策が見つけられていないのですが、タームにタームを設定し、店舗のリストもタームで管理しようと考えて設定していますが思った結果が得られていません。原則を考えれば当たり前ですが、タクソノミーの基本はコンテンツに対するラベルなので、コンテンツが存在しないタームは表示が出来ないという事は理解できています。
今回の記事では触れませんが、タクソノミーの表示もビューで管理されています。この設定を一度しっかり見極めて見たいと考えています。ビューのフィルタリングの条件が定数を基本としていますが、タクソノミーのビューは変数を基本としているのでこの辺りを理解すると解決策が見つかるかもしれません。
Drupalのデフォルト機能としてトップページに記事やページを表示させる機能があります。記事や作成ページで表示の可否を設定する機能のみなので自動的に新着記事をテーマ別に新しい順に3記事のみ表示といった設定をする事が出来ません。このような設定はタクソノミーとビューとブロックレイアウトを上手く組み合わせる事で実現することが出来ます。タクソノミーだけではなく他の機能との複合設定を行う必要がありますが目的とする情報を目的とする場所に目的とする形で表示する事が出来ます。
Topページに異なるボキャブラリーの記事を新着順に3つづつ表示しています。
タクソノミーで設定したボキャブラリーをビューでブロック化して、ブロックレイアウトでTopページに表示しています。
2つのテーマの新着記事を3記事づつ表示しています。この新着情報は、ビューにてタクソノミーを抽出条件としてボキャブラリーでフィルタリングを行い、ブロックを作成しています。このブロックをTopページにブロックレイアウトで呼び込み表示させています。
2記事に渡り、Drupalのタクソノミーについて説明しています。他の機能に比べ、設定や使用方法がわかりやすい機能なので利用用途としては高い機能であります。目的を限定していないので、利用方法を考えていくと色々な形で使用出来ます。
基本は記事やページにラベルを持たせて、そのラベルをさまざまな形で利用していく機能であり、単独の記事やページをどこにどのような形で表示させていくかを考えていく基本になる機能です。
Drupalの概念という説明を良くしますが、タクソノミーにもあり、ボキャブラリー > タームで構築して行きます。Drupalの特徴に、設定と使用を切り分けて考えているとよく話しますが、ボキャブラリーでフィールドなどの設定を行い、実使用はタームを使うのでここでも設定と実使用が分けて考えられています。
この事で、タームにページ的な要素を持たせ、一般的なタクソノミーの利用方法と異なる使い方を容易に行う事が出来ます。今回紹介した店舗紹介のページをタクソノミーで作成して管理していくことなどは他のCMSではあまり思いつかないのですが、設定と使用を切り離し、設定項目を確認する必要があるDrupalを使用する事で思いついた発想であります。
他の記事でも良く話す、複数の機能にまたがって設定を行う必要性と、複数の機能での設定による自由度と応用性の高さがDrupalの利点でもあります。今回タクソノミーの記事を書きましたが、ビューやブロックレイアウトと組み合わせる事で利用方法の幅が広がって行きます。
次回はビューの説明をして行きたいと考えています。
Views-1 Page
作成した記事やページを条件に応じてリスト化し自由にサイト内に配置出来るビューの機能についてまとめて行きます。