Personal tools
現在位置: ホーム ドキュメント Plone3 ユーザーマニュアル 4. コレクションを使う

4. コレクションを使う

Ploneには「コレクション」という一種のスマートフォルダ機能があります。これを利用することでサイト全体、あるいは特定の場所から指定した条件でコンテンツをまとめて表示することなどができるようになります。

※註:本校はこのドキュメントを翻訳したものです。

4.1. コレクションについて

Ploneの「コレクション(Collections)」はデータベースにおけるレポートやクエリと同じように働きます。たとえばコンテンツタイプ(ページ、ニュース記事、画像)、公開された日付、あるいはタイトルや説明、本文の中に含まれたキーワードなどの組み合わせをキーとして、コレクションを用いて自分のサイト内を検索できます。

自分のWebサイトに写真と地図の大きなカタログがあるとしましょう。それらが格納されたフォルダへのハイパーリンクを作ることによって、それらを全部一度に表示することが簡単にできます。もしサブフォルダを使って整理したいのであれば、サブフォルダに対して異なるリンクを作ることさえできるでしょう。とはいえ、もし画像と地図がサイト内にわたっていくつものフォルダに散らばっていたとしたら、これは面倒なことになります。それに、次のような情報を基にしてサイト内の異なる部分から異なるコンテンツを表示することは普通のフォルダには決してできません。

  • タイトル内のキーワード
  • 作成日付
  • 作者
  • コンテンツのタイプ


様々な動的な方法でコンテンツを見せる必要性が「コレクション」を生み出しました。コレクションは古いバージョンのPloneで「スマートフォルダ」とか「リッチトピック」として知られていたものです。コレクションは実際にはコンテンツアイテム自体をフォルダと同じように含んでいるわけではありません。その代わり、あなたが設定した選択基準が各コレクションページに現れるコンテンツを決めます。

コレクションに対するよくあるアプリケーションは以下のものです。

  • ニュースアーカイブ
  • イベントアーカイブ
  • 日付範囲によって表示される写真
  • キーワードによって表示されるコンテンツ

 

4.2.コレクションを追加する


以前は「スマートフォルダ」と呼ばれていたコレクションは、特別な検索を行うことによって見つかるアイテム一覧の仮想コンテナと言えるものです。

「コレクション」はコンテンツに対する仮想コンテナのようなものを作り上げるに使われます。ーーそのアイテムはWebサイトのどこかに格納されているコンテンツとして実際に存在しますが、コレクションは検索設定によってセットされる条件に沿ってコンテンツを見つけ出し、それを別の並べ方で格納されているかのように見えるようにします。このセクションの紹介で述べられた蝶のページでは、実際の格納のされ方は分類学的なグループ化(Skippers, Monarchs, Dustywings など)によるものですが、コレクションを使えば、様々な基準により様々な仮想グループ化があり得ます。たとえば色によるグループ化です。検索条件に合致する蝶のページが、色によって整理された蝶のページを持つコレクションの中にあるかのように見せることになります。もちろん、これを働かすすには、蝶のページに色の「カテゴリー」のセットがなくてはなりません(カテゴリーは以前はキーワードと呼ばれていました)。一般的なテキストを検索するための検索条件によって、とても意味のある並べ方を組み立てることもできます。

格納される場所がどこであろうともコンテンツが格納されている場所を考えること、そしてコンテンツの別の「ビュー」を引き寄せるためのカスタムコレクションを利用することを知ることは、Ploneを最も効果的に使うための重要な一歩です。これはとても賢いシステムです。

コレクションを追加するには、他のコンテンツタイプを追加するのと同じように、
「追加...」メニューを使います。

pic4-1

「コレクションを追加」パネルが表示されます。

pic4-2

タイトルと説明フィールドの下側に、新しいコレクションに対する検索条件によって返される検索結果のフォーマットを指定するフィールドのセットがあります。上のパネルにある4つのフィールドは組になっています。上の二つのフィールドは検索結果と表示されることになるアイテムの数を制限できるようにしてくれます。下の二つのフィールドは検索結果アイテムの順序を制御できるようにしてくれます。

検索条件をセットする
上の編集パネルで表示コンフィグレーションをセットした後で、検索条件をセットするためのパネルを見るために「検索条件」タブをクリックしてください。

p4-3

パネルの一番上の部分で、「新しい検索条件を追加」とありますが、そこでフィールドと検索条件の詳細をセットすることができます。下の部分で、「ソート順を設定」とありますが、そこで並べ替えるためのフィールドを選びます。

pic4-4

コンテンツアイテムのデータを合致させるための検索条件は、どのフィールドが選ばれたのかに依存します。

「コレクション」を保存した後に、コレクションがクリックされると、検索条件が適用されてその結果が表示されます。このようなカスタムビューのためのコレクションをいくつでも作ることができます。上で述べた蝶の例では、最近のアイテムを見つけるための日付制限に加えて、「青い蝶」や「白い蝶」などといった一連のコレクションを得るための色を合致させるために、カテゴリフィールドを使うことができます。

コレクションで複数の検索条件を使うことができます。たとえば、「先月撮影された蝶」と呼ばれるコレクションは、作成日付に基準をセットし、アイテムタイプを画像にセットすることによって作ることができます。このような日付を基にしたコレクションは管理上の手作業を必要とせずにコンテンツの最新情報を見せるのに本当に効果的です。ーーこのようなコレクションがいったん作られたら、それは自動的に最新のままに維持されます。

注意:コレクションは普通のフォルダのようには振る舞いません。つまり普通のフォルダに対してできるようにコンテンツアイテムを「アイテムを追加」メニュー経由で追加することはできません。

Plone2での「スマートフォルダ(現在のコレクション)を加える」のビデオを見る

 

4.3. 表示設定を調整する

表示設定がコレクションページの見え方をいかに変えることができるかを紹介します。

コレクションの能力が検索条件の中に存在するとはいえ、表示設定はコレクションがどのように見えることになるかについて大きな違いを作り出すことができます。このセクションで説明する3つの設定は、コレクションの編集タブをクリックすることによって見つけることができます。

検索条件を継承


「条件の継承」オプションを選ぶことによって、コレクションは親コレクションからの基準を継承することになります。これはサブコレクションを使っているときだけ役に立ちます。もしこれがチェックされれば、親の基本的な検索条件を保持したまま親よりも限定的な別のコレクションを作ることができます。簡単な例としては、サイト内のすべてのイベント表示するために親コレクションと、(基準を継承することによって)これもイベントを表示するのですが特定のキーワードを持つイベントだけを表示するサブコレクションです。

検索結果の数を制限


コレクションがページごとに表示することになる結果の数を制限するために、「検索結果の数を制限」を使うことができます。このようにすることで、ニュース記事を表示するコレクションであれば、一つの大きなリストですべてのニュース記事を見せる代わりに、5本とか10本とかの数に結果を制限することができます。

表形式で表示


「表形式で表示」はコレクションの結果を表示するための単純に別な方法です。リストの形式で結果をコレクションに吐き出させる代わりに、その結果を使ってコレクションにテーブルを生成させて、結果についてのまさに表示させたい情報をセットすることができます。左の枠からテーブル列を選び、右矢印ボタンをクリックしてそれを右に移動することによってテーブルをカスタマイズします。上の例では、オブジェクトのタイトル、その作者、有効日付を含むように選びます。列をいくつでも、あるいはもし選ぶならそれらすべてを使う事ができます。

何を選ぶかを考えるときには、利用できるすべての列について、すべてのオブジェクトがその情報を持つわけではないことに留意してください。たとえば、開始日付と終了日付はイベントに対してだけ適用されます。ですから、もしこれらの列を追加してそのテーブルがイベントだけでなくページも含むのであれば、その時はページの行は開始日付と終了日付が埋まることはないでしょう。考えるべき別のこととして、持っている列がより多いと、テーブルはより混雑したもにになります。一番の経験則は、ぜったいに表示させる必要があるものだけを表示することです。

列を選ぶのに関する事柄をもう少し:クリックするときにコントロールキー(Ctrl)[※MacOS Xではコマンドキー]を押し続けることによって、一度に一つ以上のものを選ぶことができます。列を取り除きたいのなら、右側の枠でそれを選び左矢印ボタンをクリックします。それらの名前をダブルクリックすることによって列を追加したり取り除いたりすることもできます。

4.4. 検索条件の定義

利用できる様々な検索条件フィールドの定義と例

コレクションの能力は疑いなく検索条件フィールドにあります。様々な基準をどのように使うのかを習得することによって、コレクションをいくつもの便利な方法で使えるようになります。このセクションでは、基準を使うたくさんの方法を説明するのに例を使うことにします。

カテゴリ
カテゴリ基準はオブジェクトのカテゴリフィールドを検索できるようにしてくれます。これを働くようにするには、事前にコンテンツオブジェクトに対してカテゴリを指定しなければなりません(これはコンテンツオブジェクトの分類タブを通じて行われます)。これを使うことができる例は、たとえば「組織」というカテゴリに関係するオブジェクトをすべて表示するコレクションを作りたい時です。基準に対して「組織」という値を選ぶことができます。その後、この基準を保存しそのコレクションを見ると、その結果は「組織」というカテゴリに指定したコンテンツすべてということになります。

繰り返しますが、コレクションのカテゴリで利用できる値は、完全にあなたのオブジェクトの分類タブの中であなたが指定したものしだいです。

作成者
作成者を条件とするときは、オブジェクトを誰が作ったのかを基にしてオブジェクトを絞り込んでいます。ある作者についての特集を組みたいのであれば、これが役に立ちます。あなたのサイト内に存在するある作者によって作られたコンテンツを表示したいような場合です。

見てわかるように、検索条件タイプに対していくつかの選択肢があります。それらの選択肢は作成者を現在ログインしている人に限定したり、他のユーザの名前をテキストとして入れたり、あるいはリストからユーザを選ぶことができるようにしてくれます。

複数ユーザからの結果を表示させたいのであれば、値のリストオプションを使う必要があるでしょう。さもなければ、選びたい作成者が自分自身でなかったならば、普通はテキストオプションを使います。もし自分を選びたいのであれば、「現在のユーザに限る」を使うことでしょう。

説明
説明フィールドは本質的に検索ボックスタイプです。とはいえ、ページのタイトルと本文を検索するのではなく、これはコンテンツオブジェクトの説明フィールド内のテキストだけを検索することになります。首尾一貫してすべてのコンテンツオブジェクトに対して説明フィールドを埋めているなら、この基準は本当に役に立ちます。

位置
位置基準を使うことは、ファイルシステム上のドキュメントを探すときに場所を指定するのに似ています。位置基準を指定することによって、コレクション内で表示される結果はその場所、通常はフォルダから来るものだけになることでしょう。たとえば、もしサイトの「私たちについて」の部分内にあるコンテンツだけを表示したいのであれば、これは役に立ちます。他の条件と組み合わせて結果を絞り込むのにも役に立ちます。

位置を指定するには、追加ボタンをクリックします。すると新しいウィンドウが現れて自分のPloneサイトのディレクトリを見せてくれます。前記の例に従ってサイト内の「私たちについて」の部分を検索したいならば、私たちについてフォルダの隣にある「挿入」ボタンをクリックします。

ブラウズボタンをクリックするか、直接的に開きたいフォルダのタイトルをクリックするかして、フォルダの中に含まれたコンテンツを見るためにフォルダを開くことができます。オブジェクトのタイトルを検索するために検索ボックスも使うかもしれません。

テキストを検索
「テキストを検索」はとても役に立つ条件です。Ploneサイトやインターネット検索エンジンの検索ボックスに似ています。あなたが指定するテキストをもとに、すべてのオブジェクトのタイトル、説明、本文を検索し、あなたが指定した単語や語句を持つものならなんでも返します。ある事柄に関係があるオブジェクトを見つけたいときに、特に単語や語句が多くのコンテンツタイプにまたがって現れるときに、これは役に立ちます。LearnPlone.Orgを例として使うと、用語集に参照づけるすべてのオブジェクトを表示するコレクションを作りたければ、検索テキスト基準を使いその集まりを記述するでしょう。すると、タイトル、説明、あるいは本文内のにその語句の集まりを持つすべての指導書、ビデオ、用語解説などがコレクション結果の中に現れることでしょう。

関連する
「関連する」フィールドはカテゴリに似た別のフィールドであり、コレクションで使われるのに先立って、コンテンツオブジェクトで指定されなければなりません。オブジェクトの「関連する」フィールドは。あなたが作ったオブジェクトと同じようなあるいは関連するサイト内の他のオブジェクトを指定させてくれます。このフィールドを指定することによって、オブジェクトを作るときに、お互いに参照し合うことになる関連するコンテンツの網を作ることができます(「これも見て」のような種類の機能を考えてみてください)。これをしておけば、特定のオブジェクトに関連するあらゆるものを表示するのに、コレクション内の関連先基準を使うことができます。

この場合、私たちのスタッフ、歴史、私たちについてといったホームページに関連するページがあるように指定しました。リストからひとつあるいは複数の値を指定することによって、コレクションはその値に関連するページを表示することになります。

もし欲しい値を「歴史」というように選んだなら、コレクションは歴史ページに関連するすべてのものを見せてくれることになります。

関連先の値のリストはコンテンツに関連するオブジェクトについて働くのではないことに留意してください。関連する他のオブジェクトを持つオブジェクトについて働くのです。コレクションはその値に関連する結果を表示することになります。

状態
状態基準を使うことはとても簡単です。これは公開状態やプライベート状態によって分けることができるようにしてくれます。一般公開コレクションを公開済でフィルタリングすることはとても良い考えです。そうすればプライベートコンテンツはコレクション結果に現れません。同じように、プライベート状態でフィルタリングすることも役に立つかもしれません。たとえばサイト管理者は何の作業が行われる必要があるのか、そして何が削除できるのかを見極めるために、プライベートコンテンツを即座に見たいかもしれません。

日付
条件として使うのにいくつかの異なる日付が利用できることに気がついたかもしれません。このようにとてもたくさんの日付があるので、それらはこのマニュアルの該当セクションで説明されます。

4.5. ソート順をセットする

結果が表示するときの順序をカスタマイズするために、ソート順機能をどのように使うのかを紹介します。

ソート順は、表示されることになるコレクションの結果の順序を決めます。ソート順は3つの主要なカテゴリによってソートできるようにしてくれます:すなわちテキスト、オブジェクトプロパティ、そして日付です。テキストによってソートするときは、オブジェクトはアルファベット順にソートされることになります。オブジェクトプロパティの一つによってソートすることは、実質的に特定のプロパティによってオブジェクトを一緒にグループ化することです。日付によるソートをすると、(Plone内に種々の日付がありますが)結果は最も最近にものが最初にきて表示されることになります。すべてのソート順は逆順チェックボックスが選ばれない限り昇順です。これをチェックすることによって逆順で表示することができます。あるいは最新の日付が最初に来るようにしたりなどです。

日付


このマニュアルの次のセクションで説明されるように、たくさんの日付オプションがあります。

オブジェクトプロパティ


アイテムタイプ

アイテムタイプによってソートすることは、結果としてアイテムタイプによってグループ化された結果を持つコレクションをもたらします。たくさんの様々なアイテムタイプを返すことになるコレクションがあるなら、これを使いたくなるでしょう。このようにすると、サイト訪問者にとってとても見やすいコレクションを作ることができます。

状態

状態によってソートすることは、公開状態によってグループ化された結果を表示することになります。Ploneのデフォルトコンフィグレーションでは二つの状態しかないので、公開済みアイテムとプライベートアイテムだけしかないことになるでしょう。これを使ってサイト内のすべてのページを分けることができ、私たちが持つ公知(公開済)のものと一般の目から隠されている(プライベート)ものを容易に見分けることができます。

カテゴリ

カテゴリソート順は、サイト内のオブジェクトを私たちが定めたカテゴリによってグループ化された形で表示したいときに役に立ちます。カテゴリによるソートをすることは、いくつかのオブジェクトでカテゴリを指定していなければならないので、間接的にも役に立つことを知っておいてください。もしカテゴリを何も指定していなければ、カテゴリによってソートすることは何も効果がありません。

関連先

「関連先」ソート順は実際にはコレクションの基準を適用されることになります。それはこれらのプロパティで指定された「関連先」情報を持つ持つものにだけ結果を制限します。

テキスト


ショートネーム

ショートネームによってソートすることは、結果オブジェクトをアルファベット順に置くことと同じです。デフォルトでは、Ploneはオブジェクトのショートネームをタイトルと同じになるようにセットします。その二つの間の違いは、ショートネームはすべて小文字で表され単語間がハイフンでつながれることです。たとえば「About Us」とタイトルされたページに対するショートネームは「about-us」でしょう。ショートネームはPloneがページに対するURLの中で使うものでもあります(www.myplonesite.org/about-us)。コンテンツタブの名前を変えるボタンを使うことによって、オブジェクトに対して違うショートネームを指定することができます。

作成者

作成者によってソートするということは、すべての結果を作成者によってアルファベット順にグループ化することになります。たとえば、Bob Bakerによって公開されたいくつかのドキュメントと、Jane Smithによって公開された別のドキュメントがあるとしましょう。作成者によってソートすることは、Bob Bakerによって作られたすべてのドキュメントを最初に列挙し、Jane Smithのものをそれに続くようにする結果をもたらします。

タイトル

タイトルによってソートすることは、オブジェクトタイトルによってアルファベット順になった結果を表示することになります。

次では、基準フィールドセクションでと同じようにこのセクションでも抜かした日付のことをを説明します。


4.6. 日付を使い理解する

コレクションとその利用に関係した日付の説明

選択可能ないくつかの異なる日付のタイプがあり、それらの多くは同じように思えます。そのため、どの日付を使うかについて簡単に当惑してしまいます。ここでは、日付オプションの各々が定義されます。

定義された日付


作成日付
作成日付はそのドキュメントが作られた日付のことです。これをその誕生日、つまりそれが生まれた日として考えてもよいでしょう。オブジェクトの作成日付は変更できません。

有効日付
有効日付はオブジェクトが公開されたときの日付です。この日付はオブジェクトの編集タブの下にある日付タブを通じてカスタマイズ可能です。その一方で、これは公開日付と呼ばれることがあります(Ploneの用語体系の中の小さな矛盾)。

作成日付と有効日付はとても似ています。どちらもオブジェクトの開始時点を表現しています。どちらを使いたいかを決めるときに心に留めておくべき重要なことは、オブジェクトはそれが公開されるはるか以前に作られるかもしれないということです。ページが実際に公開されるその数週間前に、その仕掛かり中のページがあるかもしれません。ですから、どちらの日付を使うかによって、コレクションで異なる結果を得ることになります。

日付指向のコレクションでは、作成日付の代わりに有効日付を使うことをお薦めします。そのようにすれば、あなたのコレクションはオブジェクトが公然と見えるようになった時を基にした結果を見せてくれます。これはコレクションを見る人にとってより的を得たものです。それに、ソート順を制御するために有効日付に行ってそれを手作業で調整することができます。これは作成日付でできることではありません。

満了日付
満了日付はアイテムがもはや公然とは利用できなくなる日付を指します。この日付は有効日付と同様に編集タブを通じてカスタマイズすることもできます。デフォルトでは、オブジェクトは満了日付を持ちません。

変更日付
変更日付はオブジェクトが最後に編集された日付のことです。この日付は、最初はオブジェクトが作られた日にセットされ、オブジェクトが編集されるたびに自動的に変更されることになります。この日付をカスタマイズする方法はありません。たとえば、この一週間以内で最近変更されたページすべてを表示するために、ページにセットされたアイテムタイプ基準と一緒のソート順としてこれを使うことができます。LearnPlone.OrgのホームページのWhat's New一覧は、その日付基準として変更日付を使います。そのようにすると、新しく作られたドキュメントと新しく更新されたものが一覧の中に現れます。

イベント特有の日付
次の二つの日付はイベントであるオブジェクトに対してだけ当てはまります。これら二つの日付は、あなたの組織が何をしていてそして将来何をするのかを読者に知らせてくれる最近のイベントコレクションとこれからのイベントコレクションを作るのにとても効果的です。

開始日付
開始日付は単純にイベントが始まる日付のことです。

終了日付
終了日付は単純にイベントが終わる日付のことです。

日付をセットする
日付に関して当惑することは、その条件がどのようにしてセットアップされるのかということです。それらは他のいかなる基準とも違うセットアップを持ちます。まず最初に、相対日付にしたいのか、日付範囲にしたいのかを選ばなくてはなりません。

相対日付は条件文を組み立てることができるようにしてくれます。たとえば、過去5日以内に変更されたアイテムです。日付範囲はきっちりとした日付の範囲を設定できるようにしてくれることになります。たとえば、01/02/08から02/02/08までです。日付範囲は変化しない静的な日付を持つコレクションを作りたいときに役に立ちます。相対日付はそれが自分自身を自動的に更新してくれるコレクションを作れるようにしてくれるので、とても役に立つかもしれません。たとえば、最近のニュースコレクションやこれからのイベントセクションといったものです。

相対日付
相対日付オプションについて見てみると、記入すべき3つのオプションがあるのがわかります。

最初のオプションは指定日です。これは基準が含むことになる日数を選べるようにしてくれます。オプションの一つは当日と呼ばれます。これを使うことは、日付範囲をその時の日にセットすることになります。当日を使うと、他の二つのオプションは問題ではなくなり、無視することができます。

二つ目のオプションは過去または未来です。これは将来を見ているのかそれとも振り返って見ているのかを選べるようにしてくれます。

最後のオプションは以上または以内です。ここでは3つのオプションから選ぶことができます。以内は、過去または未来のどちらにせよ、当日から指定日で設定された日数までの期間内か同じ日のすべてのものを含むことができるようにしてくれます。以上は、指定された日数と同じかそれを越えたところにあるすべてのものを含むことになります。最後に、その日は指定日で指定したその日のものだけを含むことになるでしょう。たとえば、以内の代わりにその日を選ぶとすると、コレクションは(変更日付基準を使っている場合)5日前に変更されたオブジェクトだけを表示します。

もしこれが頭が混乱するようなことであれば、次の文を選んだフィールドオプションで差し替えて読んでみて下さい。「指定日」「以上または以内」の「過去または未来」のオブジェクトを含む結果が欲しい。たとえば、5日以内の過去のオブジェクトを含む結果が欲しいとなります。

日付範囲


日付範囲はより理解しやすいです。開始日付と終了日付はともに必須です(イベント特有の日付と混同しないでください)。日付範囲は始まりの日付と終わりの日付を入力できるようにしてくれ、それはその期間内にあるすべてのものを表示させてくれます。日付だけでなく特定の時間を指定できることも知っておいてください。

以上

 

ドキュメントアクション