Web Artisan Blog - ウェブ アルチザン ブログ

Nucleus:プラグインの引数(パラメータ)にスキン変数やテンプレート変数を指定できない

Nucleus (35 items)

2004年06月29日

Nucleusプラグインの勉強という事で、
現在、簡単なプラグインを作成中です。

機能としては、
現状、当サイトは各記事タイトルの下にカテゴリー名を表示してますが、
(例:# Tips Of Nucleus)
そこに、各カテゴリー毎のアイテム数(記事件数)を表示させるものです。
完成したプラグインは、テンプレート変数的にテンプレート内に定義させるものにします。
(そもそもこの程度のテンプレート変数が標準で用意されてないとは。。)

似たようなプラグインで、
カテゴリー一覧に対して、アイテム数を表示させるものはあるようですが、
それだと当サイトのレイアウト(+Categories+ 欄)上、
アイテム数が増えた時に表示が崩れる恐れがありますので。。。
(例:# Tips Of Nucleus (10000 items) とか・・。しかし、そんなに書くか?)


で、まだ完成はしてないんですが、
その過程で気付いた表題の件についてのメモ。

<スポンサードリンク>
カテゴリー毎のアイテム数を取得する為には、各カテゴリーのID(catid)が必要です。
ID自体はテンプレート変数「<%catid%>」で取得できます。

で、このIDを引数にもらって処理をするようなプラグインを作成。:NP_ItemCount.php
これをテンプレート内に、

<%plugin(ItemCount,<%catid%>)%>


と記述。
これがエラーとなりました。

結局のところ、構文エラーですね。
<%〜%>をネストして記述する事ができないというのは、
Nucleusの構造をよく考えてみたらわかる気がします。

他のプラグインを見ていても、
パラメータとして受け取っているのは、固定的な値のみですね。
(可変、すなわち変数は無い。というか、できない。。)
それらのパラメータは、プラグイン内部での判断材料、
つまり”フラグ”的な役割しかできない事になります。
そういう意味で、プラグインは”フラグイン”。(ダジャレ)

んー。
仕方ないと言えばそれまでですが、
あんま汎用的なパラメータではないですね。

しかし、まだNucleus初心者なんで、
この程度のプラグインを作らなくとも実現できるのかもです。
この記事内容も後々訂正するかもですが。。
一応、これはメモ書きです。。。

<スポンサードリンク>
前の記事 次の記事

Comments

ossi wrote:

プラグインは一応完成しました。
http://www.res-system.com/w...
2004年06月30日 19時59分40秒

Add Comments

Trackback

トラックバックはありません

Trackback URL

http://www.res-system.com/weblog/action.php?action=plugin&name=TrackBack&tb_id=130