えー、1203行目の
> $rep = str_replace('<%',REPLASE_CHAR,$tagstr);
を
> $rep = REPLASE_CHAR.substr($tagstr,2);
にしてみてください。これで、
<%=$plugin name="AWS" opt="<%=$書籍コード%>" %>
みたいな書式がITEMスキンで使るようになります。
これで本体の改造しなくても、プラグインで出来ます?
Re:プラグイン ヘンゼルの記憶 04/10/07(木) 01:56
えーと、今までは ITEM スキンでは <%=$~%> で、対応する XML がないと消えちゃっていた…あれ?
あううううぅぅぅぅぅ。
そもそも site_items より plugin の方が評価順が後になったことによって ver.0.9.7 からは ITEM スキンでも plugin ちゃんと使えるようになってるんですね(>_<)
http://hansel.xtr.jp/renewal/200410022000.htm で嘘書いてます。
申し訳ありませんm(_ _)m
で、この修正をすると…、あ、なるほど、stre_place だと多重になっている <% が全部置き換わっちゃって崩れちゃうところを、最初しか置き換えないようにして、中のが生き残るようになってるですね(^^)b
実際テストページでちょっと試してみると上手くいきました♪
どうもありがとうございます。
本体の修正は…そろそろ眠いので明日にします(^^;
Re:プラグイン りん 04/10/07(木) 08:20
本体の改造しちゃうと、バージョンアップの際に面倒かける事になっちゃいますので、出来るだけ要望は汲みたいなと、まぁそういうわけです。
今ならまだ仕様が確定してなくてどうにでも出来る部分が多数ありますしー
いろいろありがとうございます♪ ヘンゼルの記憶 04/10/07(木) 10:00
0.9.7 のバージョンアップと今回の修正で、わたしが勝手に手を入れている部分は掲示板レスでのタイトル及びアイコンだけになりました♪
取り合えず今のところはこれで…
あ、プラグインついでに、複数引数って可能でしょうか?
もちろん適当な区切り子をいれて渡してプラグイン側で分解すればいいのですか(実際そうしてるのもあります)、もし出来るなら楽かな…と(^^;
でも、んー、従来と互換性持たせなくちゃいけないでしょうから…
例えば
<%=$plugin name="a" func="b" opt="c" d="e" f="g"%>
から呼ぶと
function($opt,$opt2) に
$opt="c"
$opt2['d']="e"
$opt2['f']="g"
が渡されるとか…
もっといい方法があるかもですし、需要ないかもしれませんが(^^;
Re:プラグイン りん 04/10/07(木) 14:55
> 取り合えず今のところはこれで…
うい。ではこの変更は次回に反映させますです。
AWSプラグインって需要結構高い気がしますので、汎用性のある形で作って発表されれば、喜ぶ人が多いと思いますー
複数引数ですかぁ…うーん、元々optは動作モード指定程度にしか考えてなかったからなぁ…
今回のは、あくまでBODY用プラグインでITEM用スキン中に書かれたplugin命令を実行するという、いわば裏技的なテクであって、本来のITEM用プラグインの仕様では、記事ファイルを直接参照出来るようにします。
複数引数が必要なケースというのは、記事ファイルを直接参照出来れば、別にスキン経由で複数の引数を渡さなくても事足りる気がするんですが、…どうでしょう?
Re:プラグイン ヘンゼルの記憶 04/10/07(木) 22:22
記事に入っているタグの内容を plugin から直接見れるようになれば、今使っている改造 AWS タグで複数(といっても 2つですが(^^;)渡している引数が不要になりますね。
ということで今回のこの要望はなしにして、次期 rNote を待ちまーす(^-^)/
Re:プラグイン りん 04/10/08(金) 10:16
あー、でも、記事参照ではなく、サイドバーに直接書いてづらづら並べたい…みたいな場合もあるので、プラグインはスキン経由で引数渡しの仕様の方が色々便利かもしれず。
でもまぁ、複数引数可能にしたとしても、それって結局、引数の分解処理をrNote本体が行うのか、プラグイン側が行うかの違いしかないんだよなぁ。ならむしろ、引数の分解処理はプラグインが行うようにした方が、自由度が拡がるって部分もあるかも。
というわけで、やっぱ
<%=$plugin name="a" func="b" opt="c,d,e" %>
という感じで、c,d,eの分解はプラグインで行う、という仕様で。
Re:プラグイン ヘンゼルの記憶 04/10/08(金) 22:25
はーい、了解です♪

