-オープンソースのSNSエンジン OpenPNEプロジェクト-

OpenPNE3プラグインの作り方#1

11 / 17 月曜日 2008

この記事は OpenPNE3.0.x のものです。現在の最新安定版では動作しない箇所が存在します。

ws000006.PNG
開発チームの川原です。

OpenPNE3では、プラグインとしてあらゆる機能を追加することができます。
ただいま、自分が実装を手掛けているOpenSocialの機能もプラグインとして作成しています

OpenPNE3はsymfonyフレームワークを利用していますが、
symfonyのプラグインとは違ったプラグインの構造を持っています。
さらに、プラグインの骨組みを作成するためのタスクも用意されているようです。

今回は、そのタスクを利用してプラグインの骨組みを作成してみます。

コンソールでOpenPNE3がインストールされたディレクトリに移動します。
* 以下、「/var/www/OpenPNE3」にOpenPNE3をインストールした想定で説明します。

$ cd /var/www/OpenPNE3

次に、プラグイン作成タスクを実行します。
今回は「opSamplePlugin」という名前でプラグインを作成することにします。
現状ではプラグイン名の命名規則は未定ですが、
「opなんやらかんやらPlugin」
という方向で考えられているようです。

以下のタスクを実行することにより、 OpenPNE3の「plugins」ディレクトリ下に
「opSamplePlugin」が追加されるはずです。

$ symfony opGenerate:plugin opSamplePlugin

新しく追加された「opSamplePlugin」ディレクトリの中には、4つの空のディレクトリが作られます。

apps
conf
i18n
lib

symfonyプラグインとの大きな違いは、「apps」ディレクトリを配置できることにあります。
この下に、アプリケーションごとのモジュールを配置することができます。
これらの作成を自動的に行うためのタスクも用意されているようです!

PCからのSNSメンバーが利用するpc_frontendアプリケーションに
「hello」モジュールを追加してみます。

以下のタスクで「apps」ディレクトリ下に
空の「modules」ディレクトリが含まれた「pc_frontend」ディレクトリが作成されます。

$ symfony opGenerate:app opSamplePlugin pc_frontend

さらに、「pc_frontend」に「hello」モジュールを追加します。
以下のタスクで「pc_frontend/modules」ディレクトリ内に「hello」ディレクトリが作成されます。

$ symfony opGenerate:module opSamplePlugin pc_frontend hello

http://sns.example/

がOpenPNE3のURLであったとき、

http://sns.example/hello

にアクセスして以下のページが出れば完了です!

ws000005.PNG

次回の投稿では、今回作成した骨組みを利用して実際にアプリを作っていきます。

トラックバック:1

ピンバック from OpenPNE3のプラグイン開発チュートリアルサーバーも - 百姓と、あきんどのつぶやき at 東彼(とうひ)の波佐見というところ 11-03-17 (木) 19:13

[…] OpenPNE3プラグインの作り方http://www.openpne.jp/archives/683/ Published 2011年3月17日 19:09 投稿者 kaba […]

ページの先頭に戻る