[1]イントロダクション
RichDocumentとこのチュートリアルにあるコンテンツについて説明します。
このチュートリアルは、Plone2.1の方法で新たにコンテンツタイプを作成する方法を説明します。RichDocumentを例にして、ATContentTypesライブラリを使って、Plone標準のページ(ドキュメント)タイプを拡張します。
RichDocumentはPloneの標準のページ(ドキュメント)タイプに次の機能を追加します。:
- エディットタブから画像と添付ファイルを文書に直接アップロードできます。
- アップロードした画像のフローティングボックス内で画像のサムネイルを自動生成します。また、最初の画像をfloating表示します。使用するビューの選択は、Plone2.1の新しい「表示」メニューを使ってできます。「表示」メニューから選択するための追加のビューメソッドを簡単に登録できます。
同時に、RichDocumentは標準のページ(ドキュメント)タイプを置き換えます。
- RichDocumentは、コンテナとして振る舞うことができるオブジェクトです。しかし、次の点ではコンテナでないオブジェクトのように振る舞います。
- コンテンツタブがありません。
- 親フォルダのコンテンツタブからRichDocumentに移動で、フォルダのコンテンツのリストではなく、ドキュメントビューを表示します。
- 標準のページ(ドキュメント)タイプのすべてのメソッドとアトリビュートを持っています。つまり、ページを表示する場所はすべて、RichDocumentで置き換えて使用できます。
このチュートリアルについて
このチュートリアルでは、RichDocumentの作り方を実演します。最初の3つの部分は、RichDocumentのソースコードとPlone2.1のコンテンツタイプを作成するための標準のテクニックを概観します。残りの部分は、詳細に概念を説明します。
特に次の方法が学べます。
- ATContentTypesタイプ(今回の場合は、ATDocument)の正しい拡張の方法と、Plone2.1の規約にしたがってコンテンツのスキーマ、アクションとエイリアスを作成します。
- 自由にタイトルをIDにリネームします。
- LinguaPloneによる他言語コンテンツをサポートします。
- INonStructurealFolderインターフェースを使って、タイプは技術的にはコンテナとして振る舞うことができますが、PloneのUIからはフォルダのように扱われないようにします。
- テンプレートを「表示」メニューに登録します。
- 規格化されたカタログベースでのフォルダのリスティングを行います。
- Python Imaging Library(PIL)を使って、実行時に画像のサムネイルを作成します。
- 自動のJavaScriptのフックを使って、折り畳みできるフィールドのセットを作成します。
- スタイルシートを新しいportal_cssツールにResourceRegistriesから登録します。
- 特定のコンテンツタイプを標準検索で表示されなくします。
- 新規のタイプを登録して、kupuを表示できるようにします。
このチュートリアルの例は全てRichDocumentのソースコードを参照しています。最新のRichDocumentのリリースはhttp://plone.org/products/richdocument 、または、CollecticveのSubversionのリポジトリからダウンロードできます。ソースコードは、行っていることを説明するコメントを含んでいます。ソースコードをダウンロードして、このチュートリアルにしたがって参照することをお薦めします。