Joomler!.net - Decided on Joomla!

Wiki or Wordpress? No it is JContentPlus.

 

Archives

Blog

Demo

Home » Blog » 1分で作るJOOMLA!コンテンツプラグイン その2 Eventを見る
Jan
29
2010

1分で作るJOOMLA!コンテンツプラグイン その2 Eventを見る

EMailPrintPDF
0 votes
Written by:Joomler! 10682 hits

Joomlaのプラグインは、Joomlaが動いていくなかで様々なイベントで呼ばれます。今回はそのイベントを少し書いてみます。中には、プラグインとして実装されていないものもあるので、ソースを見ない限りわからないものもあったりします。

Contentプラグイン

昨日作成したexampleプラグインを見ればわかりやすいです。content_plugin_events

  • onPrepareContent
    このイベントは、名前の通り記事を表示するとき一番最初に呼ばれています。昨日作成したexampleプラグインのように記事表示前にその表示する記事に対して何かを追加したり、変更したりすることができます。
    このイベントでは、返り値は出力(表示)されません。
  • onAfterDisplayTitle
    このイベントで表示されるのは、返り値を名前の通りタイトルの後に出力します。
  • onBeforeDisplayContent
    返り値を上のAfterDisplayTitleの後に出力します。
  • onAfterDisplayContent
    返り値を記事が出力された後に出力します。
  • onBeforeContentSave
    記事を保存時、データベースに保存する直前にその記事に対して何かを行ったり、その記事の内容で特定の処理を行いたいときに使います。エラーを返し保存できないようにすることもできます。
  • onAfterContentSave
    記事保存後に処理を行いたいときに使います。

Contactプラグイン

これは、Joomlaにはプラグインとして実装されていませんが、イベントは用意されています。

  • onValidateContact
    問い合わせの送信時の送信処理前に呼ばれます。その内容によってエラーを返し、送信できないようにすることができます。たとえば、Captchaなどを利用するときに使えます。
  • onSubmitContact
    このイベントは、上のonValidateContact直後に呼ばれますが、返り値は参照されません。

 

Authenticationプラグイン

ログイン認証時に使います。

  • onAuthenticate
    ログイン認証などの時に呼ばれます。exampleを見るとわかりやすいです。

Editorプラグイン

エディタの表示時や内容の保存時他に呼ばれます。あまり使わないかとも思う(新たにプラグインとして作成しない)ので、単純にリスト。拙作EditorSwitcherでも使っています。

  • onInit
  • onGetContent
  • onSetContent
  • onSave
  • onDisplay
  • onGetInsertMethod

Editor-xtdプラグイン

エディタを表示したときイメージボタンや、改ページボタンなどが表示されますが、そういったエディタ関連の機能に何かを追加したいときなどに使います。

  • onDisplay

Systemプラグイン

システムの動きに合わせてイベントが用意されています。

  • onAfterInitialise
    Joomlaが初期化された時に呼ばれます。
  • onAfterRoute
    URIなどの処理が終わったときかな・・。
  • onAfterDispatch
    コンポーネントなどの処理が終わった後だったかな。
  • onAfterRender
    全部出力された後です。

Userプラグイン

アカウントを保存、新規作成、削除、ログイン、ログアウト時に呼ばれます。このUserプラグインもexampleが用意されているので前回作成したContent - exampleプラグイン同様少しの変更で試すことができます。

  • onBeforeStoreUser
  • onAfterStoreUser
  • onBeforeDeleteUser
  • onAfterDeleteUser
  • onLoginUser
  • onLogoutUser

Xmlrpcプラグイン

拙作MovableType XML-RPCや、JContentPlus XML-RPCで使っています。XML-RPCを使ったウェブサービスなどに使えます。

  • onGetWebServices

以上、簡単な説明で一覧にしてみましたが、Joomlaでは様々なイベントが用意されていて、大きなコンポーネント級のエクステンションを作成せずとも、うまくイベントを組み合わせていけば、簡単なプラグインでかなりの事が行えると思います。また、Joomlaは、独自のイベント実装も簡単でエクステンション自身を拡張せずともその独自のエクステンションでプラグインを呼ぶ事で、拡張していくことが可能です。たとえば、JContentPlusやJboardでは独自のイベントによる拡張でAvatarを表示したりサムネイルを表示したりしています。

大変便利なJoomlaフレームワークをもっと活用すれば、ロスなく有用なアプリケーションが短期間で作成できるのではないかと思います。

 

ADD A COMMENT

Subject*
:
Color Swatch




Email Link Page Code Text Align Center Text Align Justify Text Align Left Text Align Right Text Bold Text Quote Text Italic Text List Bullets Text List Numbers Text Strikethrough Text Underline World Link
Sun Unhappy Smile Evilgrin Wink Tongue Lightning Surprised Grin Rain Clouds Cloudy Snow Waii
Name*
:
EMail*
:
Please answer....
Submit Preview

JContentPlus for Joomla!1.5 powered by Joomler!.net

デル株式会社

Related Items

joomler.net is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla!(R) name is used under a limited license from Open Source Matters in the United States and other countries.
joomler.net is not affiliated with or endorsed by Open Source Matters or the Joomla! Project.