前 [第四章:ワークフロー] | 目次 | 次 [第六章:ルックアンドフィールを変える]
この章ではコードを書くことなくWebインターフェースを使ってPloneの構成を設定することを説明します。
PloneはZopeとコンテンツ管理フレームワーク(CMF)の上に成り立っています。Zopeはそれ自体でWebからアクセスできる管理インターフェース(ZMI)を持っています。コンテンツを追加したり編集したりのようなPloneのほとんどの日常的な管理はこのZMIにアクセスする必要があります。さらに、いくつかのより高度なPloneの機能を操作するのにもこのZMIを使う必要があります。
アクセスするのは簡単です。例えば、http://localhost/manageのようにサイトのURLの右端に「/manage」を付け加えるだけです。もしMacかWindowsのインストーラを使っているなら、ポート80を使ってPloneサイトにアクセスでき、ポート8080を通してZMIのルートフォルダにアクセスできます。例えば、Ploneにはhttp://localhostでアクセスでき、ZMIにはhttp://localhost:8080/manageでアクセスできます。
ナビゲーションが左側の枠の中にあり、オブジェクトは右側で操作されます。ZMIについてのより詳しい説明はZope Bookの第X章を参照してください。
注記:もしZMIのルートフォルダにログインしたなら、それはログアウトの方法を持たないHTTP基本認証を経てログインしたことになります。これはブラウザを閉じることなしにはPloneサイトからログアウトすることができないということです。つまりログアウトするにはブラウザを閉じる必要があります。これはPloneのバグではなく、どちらかというとHTTP基本認証APIの欠陥です。テストの目的のためには、二つのブラウザを開けるのに一回のログインですむため通常は便利です。
Ploneサイトはコンテンツあるいはツールからなるひとつづきのオブジェクトから成っています。WebからPloneにアクセスした時にはPloneの素晴らしい働きをしてくれるここで説明されているようなこれらのツールを見ることはできません。すべてのツールがPlone独自のものではありません。大部分のものは直接的にCMFからのものです。これらいくつかのものについてのより詳しい情報は関連するCMFドキュメンテーションを見てください。
...
Ploneでは、異なる時に、異なる人によって、サイトの異なる部分で実行されるものがあります。例えば検索、フォルダの閲覧、ログインのようなものはアクションと呼ばれています。Ploneはそれらをタブ、リンク、そしてその他の表示要素に対応させます。これらはサイトのナビゲーションの部品を提供するとても柔軟な方法です。アクションはZMIを使って編集され、例えばportal_actionsのようないくつかの所に含まれます。アクションを持つツールはツールプロバイダと呼ばれます。
各々のアクションはZMIで設定できる次のようなプロパティを持ちます。
有効(active)か否かということ。アクションは通常視覚的要素に関連しているのでvisibleという表現が使われます。PloneではZMIで表示される各カテゴリー内でのアクションの順番はスキンの中に現れる順番を決定します。例えば「Welcome」は一番最初に出てくるアクションであり、Ploneサイトの最初のページのポータルタブの一番左側に表示されます。アクションを選択してMove upとMove downボタンを使ってリストの中のアクションを上下させ順番を変えます。
アクションプロバイダは不幸にも少しあちこちにありすぎて、時にはどこにアクションがあるのかを探すのが少し難しいことがあります。Ploneサイトの現在のアクションプロバイダのリストを得るためには、ZMIでportal_actionsに行き、Action Providersタブを選択します。これはアクションを持つことができるすべてのオブジェクトをリストします。
portal_actions)ポータルアクションは他のアクションプロバイダに入っていないアクションをすべて含む包括的なものです。ここに含まれるもっとも一般的に用いられるアクションはportal_tabsカテゴリーです。
portal_membership)メンバーシップ関連のユーザーに関するアクションを含みます。通常はuserカテゴリーのすべてです。これらのアクションは標準的なPloneスキンの中のポータルタブの下に現れます。これらのアクションの大部分はログインしているか否かに関連した許可を持っています。
portal_registration)ユーザを登録するためのアクションを含みます。ディフォルトのPloneではjoinアクションただ一つだけがあります。
portal_discussion)議論のためのアクションを含みます。デフォルトのPloneではreplyアクションただ一つだけがあります。
portal_undo)コンテンツを元に戻すためのアクションを含みます。例えばundoやquick undoです。コンテンツを前のバージョンに立ち戻らせることができるように、ユーザがコンテンツを元に戻すインターフェースを提供します。
portal_syndication)シンジケーションコンテンツのためのアクションを含みます。コンテンツをシンジケートさせたいなら、このアクションをVisibleにしなければなりません。そうすれば「Syndication」タブがフォルダーに現れ、コンテンツをシンジケートするための設定画面が使えるようになります。
portal_workflow)このアクションはワークフローそのものに含まれるようなものです。例えばワークフローの重要な部分とかです。ワークフローは第四章で説明されています。
portal_properties)ポータルを変更するためのアクションを含みます。例えばいくつかの重要なPloneのパラメータを変更できるようなPlone setupです。
スロットは自己完結的な情報を持つWebページの小さな領域です。Ploneの中でこれらのスロットはページの左側と右側の枠にあり、例えばカレンダーやナビゲーション、ログインボックスなどの情報を含んだものです。これらのスロットは動的あるいは静的な情報をユーザに提供し、ZMIを使って簡単に構成を定義することができます。
このスロットの構成を定義するにはZMIにアクセスし、編集したいオブジェクトの所で「Properties」タブを選択します。Plone的にいえば、Ploneインスタンスを選んでそれから「Properties」を選びます。これは下記に示すようにleft_slotsとright_slotsを含むプロパティのリストを表示します。

left_slotsはページの左側にあるスロットを、right_slotsはページの右側にあるスロットを示しており、それらが与えられた順番でリストされています。スロットプロパティはここで編集ができ、サイトの全域に渡って影響を及ぼします。あるいはその下のページだけに影響が及ぶように各フォルダーのところでプロパティを編集することもできます。例えば標準Ploneサイトインストールではメンバーフォルダーが異なるright_slotsプロパティを持っています。
すべての利用可能なスロットがPloneで構成が定義されているわけではありません。次にあげるものがPloneの各スロットの詳細です。そのファイルの場所であり、それが表示されるようにスロットに追加されるのに必要なパス表現です。
ファイル名: plone_templates¥ui_slots¥about_slot.pt
パス表現: here/about_slot/macros/aboutBox

これは現在のオブジェクトについての情報を表示します。例えば誰が作成したとか、最後に更新されたのはいつかとか、などです。
ファイル名: plone_templates¥ui_slots¥calendar_slot.pt
パス表現: here/calendar_slot/macros/calendarBox

これはPloneカレンダーを表示します。これはZMIでportal_calendarツールを使って構成が定義されます。そしてカレンダー上ではいくつかの選ばれたオブジェクトタイプのものを表示します。
ファイル名: plone_templates¥ui_slots¥events_slot.pt
パス表現: here/events_slot/macros/eventsBox

これからのイベントのリストを表示します。この項目がスロットリストにあったとしても、何か公開されたイベントが無ければこれは表示されません。
ファイル名: plone_templates¥ui_slots¥favorite_slot.pt
パス表現: here/favorites_slot/macros/favoritesBox

ユーザーのお気に入りとそれらを整理するリンクのリストを表示します。この項目がスロットリストにあったとしても、ユーザーがなんらかのお気に入りをもっていなければこれは表示されません。
ファイル名: plone_templates¥ui_slots¥login_slot.pt
パス表現: here/login_slot/macros/loginBox

ユーザーがログインできるようにログインボックスを表示します。この項目がスロットリストにあったとしても、すでにログインしていればこれは表示されません。
ファイル名: plone_templates¥ui_slots¥navigation_tree_slot.pt
パス表現: here/navigation_tree_slot/macros/navigationBox
注記: このナビゲーションスロットの古いバージョンは評判がよくありません。

ナビゲーションスロットは現在の場所のフォルダー構造を簡単なツリー形式で表示します。これはとても強力で簡単な案内ツールです。ナビゲーションスロットはすこぶるカスタマイズが可能で、ZMIの中でportal_properties/navtree_propertiesにアクセスすることによって変更することができます。
ファイル名: plone_templates¥ui_slots¥news_slot.pt
パス表現: here/news_slot/macros/newsBox

最近のニュース記事のリストをリンクと共に表示します。この項目がスロットリストにあったとしても、なんらかのニュースが公開されていなければこれは表示されません。
ファイル名: plone_templates¥ui_slots¥related_slot.pt
パス表現: here/related_slot/macros/relatedBox

キーワードで見つけ出される関連するすべてのアイテムのリストを表示します。例えば上記のイメージでは現在のページはPythonというキーワードを持っており、そのキーワードを持つ他のすべてのページが表示されます。アイテムは内部リソース(自サーバ内)、あるいは外部リソース(他サーバ上)に分けられます。この項目がスロットリストにあったとしても、何らかの関連するオブジェクトがなければこれは表示されません。
ファイル名: plone_templates¥ui_slots¥review_slot.pt
パス表現: here/review_slot/macros/reviewBox

レビュー状態にありレビューされるのを待っているオブジェクトのリストを表示します。ユーザがレビュー権限を持っていて、レビューを待つアイテムがある場合にのみこれは表示されます。下図のようにナビゲーションバーの中にアイテムの数が表示されます。

スロットを作るためにパス表現を使うのは比較的強力なツールです。これで様々なオブジェクトからほとんどどんなコンテンツでもスロットの中に入れることができるようになります。Ploneはパス表現に関連した結果を見つけてただ表示するだけです。例えば、あなたが世論調査のプロダクトを持っていて、これをスロットの中に表示したい時にはhere/polls/funnylaughter/frontpage_poll_view とすることができます。(注意:これは例であり、このパス表現は標準的なPloneインストールでは動作しません) パス表現はZopeとPloneの重要な部分であり、さらに詳しい情報はXXを見てください:
もし、自分自身のカスタムスロットを書いてみたいなら、おそらく適切なHTMLとTALクラスでページテンプレートを追加することになります。さらに詳しい情報はXXを見てください。
...(今後記述される予定)
シンジケーションはRSS (Really Simple Syndication または Rich Site Summary)を通じてフォルダーコンテンツにアクセスする機能です。RSSはフォルダーの中のすべてのオブジェクトのリストを作成します。この要約はたくさんのいろいろなニュース読み取りプログラムによって定期的にアクセスされます。
シンジケーションを使えるようにするには、ZMIの中でportal_syndicationオブジェクトに行きます。フォルダーのための「Syndication」という名前のアクションがひとつあり、ディフォルトではvisibleになっていません。このアクションがvisibleになるように「Visible」チェックボックスをチェックします。サイトのためのシンジケーションも有効にする必要があります。これは 「properties」をクリックして、次に「enable syndication」をクリックします。
そうするとPloneサイトの任意のフォルダはSyndicationタブを持つことになります。シンジケーションさせたいフォルダすべてについてシンジケーションを有効にする必要があります。有効にしたいフォルダーに行き、「syndication」タブをクリックします。シンジケーションを使えるようにする簡単なボタンがあるので、シンジケーションを有効にするためにこれをクリックします。もし「Syndication not allowed」というメッセージを得たなら、portal_syndicationオブジェクトに戻ってプロパティタブの中のシンジケーションを有効にしたことを確認してください。
有効にした後でのシンジケーションページでのいくつかの値は次のようなものです。
注意:シンジケーションは下位のすべてのフォルダーに再帰的は働きません。それは現在のフォルダーだけに働き、かつ公開されたコンテンツについてだけです。
Page Editor: Andy McKay $Id: 5,v 1.1.1.1 2003/08/26 17:09:50 tyam Exp $