Title: TeamPage プラグイン概要

プラグインを使うことで、TeamPage に新しい機能を追加したり既存の機能に変更を加えたりできます。

プラグインを使ってできること



プラグインは、次のように、TeamPage のほぼすべてのことができるよう柔軟に設計されています。



プラグインの作り方



フォルダ(ディレクトリ)の作成



プラグインの実体は、TeamPage がインストールされた server ディレクトリの下の plugins ディレクトリの下に、プラグイン毎のディレクトリとして設置されます。

そこで、新しいプラグインを作るときは、まず、この plugins ディレクトリに新しいプラグイン用のディレクトリを作成します。ディレクトリの名前は、次のように、自分のインターネット上の組織名(ドメイン名)を逆順にしたものを推奨しています。



この plugins 直下に作られた各ディレクトリは、server ディレクトリと同じ位置として解釈されます。

例えば、plugins ディレクトリに jp.co.akj.newentryimage というプラグイン用ディレクトリを作成し、その下に image ディレクトリを作成し、その中に akjlogo.png というファイルを置きます。すると、このファイルは server ディレクトリ直下の images ディレクトリに置いたものとして認識されます。



つまり、HTML では、次のようにしてこのファイルを表示できます。

<img src="/images/akjlogo.png" alt="AKJ Logo Sample">


次のように、plugins ディレクトリを含めたパスを指定する必要はありません。

<img src="/plugins/jp.co.akj.newentryimage/images/akjlogo.png" alt="AKJ Logo Sample">


定義ファイルの設置



プラグイン用ディレクトリに、plugin.properties というファイルを作成し、次のような属性や値を指定します。



メモ : 日本語を表示するには、既存の日本語リソースを利用するか、新しく UTF-8 で言語リソースを作成し、それを呼び出すようにする必要があります。



プラグインの設定ファイル

リソースファイルの配置



ここでは、例として、既存の「新しい記事の作成」画面(newentry ビュー)を改造して、画面上部に広告画像(アプライドナレッジのロゴ)を表示するようにしてみます。

TeamPage の HTML ソースは、主に SDL ファイルによって作られます。SDL ファイルは、server ディレクトリ直下の src ディレクトリ配下にある、拡張子 .sdl のファイルです。

「新しい記事の作成」画面を作り出す SDL ファイルは、このファイルです。(以下、ファイルの設置パスを server ディレクトリをルートディレクトリとして記述します)

/src/com/traction/sdl/edit/editlib.sdl


この階層構造をそっくりそのままプラグインのディレクトリ (jp.co.akj.newentryimage) にコピーすると、コピー元の editlib.sdl よりコピー先の(つまり、プラグインのディレクトリ内の) editlib.sdl の方が優先されます。つまり、既存の editlib.sdl を書き換えること無く、実際の動作を変更できるようになります。

ただし、一つ注意が必要です。src ディレクトリは特別なディレクトリなので、プラグインのディレクトリにコピーするときは、この「src」は不要です。上記の editlib.sdl をコピーするとき、コピー先のパスは次のようになり、「src」ディレクトリを含めてはいけません。

/plugins/jp.co.akj.newentryimage/com/traction/sdl/edit/editlib.sdl




コピー先の editlib.sdl をテキストエディタで開き、「htmlheader2」で検索し、<!--- body ---> と書かれたすぐ下に、次の記述を挿入します。

<div class="AKJ Logo">
<img src="/images/akjlogo.png" alt="AKJ Logo">
</div>




動作への反映の確認



リソースに加えた変更を反映するには、サーバーセットアップ | 一般 タブ | サーバー管理 タブ の [キャッシュのクリア] をクリックします。

サイドバーの [新しい記事] ボタンをクリックして「新しい記事の作成」画面を表示すると、上記で指定した画像ファイル (akjlogo.png) が表示されます。

ロゴが表示されあ

また、サーバーセットアップ | プラグイン タブ のインストール済みプラグイン一覧に、作成したプラグインが表示されます。

新しいプラグイン

プラグインのパッケージ化



プラグインを他の TeamPage にもインストールできるようにパッケージ化するには、プラグイン用のディレクトリを、ディレクトリ階層構造を保ったまま ZIP 形式で圧縮します。

プラグインのzip圧縮

是非、あなたの作成したプラグインを、Forum スペースに投稿してください。





Attachments:
plugins_01.png
plugins_03.png
plugins_01.png
plugins_02.png
plugins_03.png
plugins_04.png
plugins_05.png
plugins_06.png
plugins_07.png
plugin.properties.png
関連記事
Article: FAQ1683 (permalink)
Categories: :FAQ:TP機能, :FAQ:プラグイン, :DocSDK:カスタマイズ, :DocSDK:FAQ
Date: 2011/07/05; 19時59分02秒 JST

Author Name: TeamPage サポート
Author ID: jpbo