T

Lokka

WordPressを憎む根性曲がりな人のための密やかな楽しみ、Lokkaをいじってみた。というかgithubにあるので華麗にフォークした。

ざっと眺めて、最初に必要なのはプラグインの自動ロードだろうなあ、と思っていたのだけれど、迷うところが2点。ひとつは、まあルールにしてしまえばいいんだけど、自動ロードするからには何らかの命名規則に従ってもらう必要がある。ちょうどサンプルにhelloプラグインがあったので、これ幸いと

plugin/hoge/lib/lokka/hoge.rbがあったらHogeクラスをregisterする

ということにしてしまった。これはSinatraでいうところのregister Hogeと同等なのだが、じゃあSinatra拡張モジュールの二大巨頭であるところのhelpersはどうするんだという問題がある。するとHelperの方を拡張するやつを書いている人が見つかったので、

plugin/hoge/lib/lokka/hoge.rbの中でHelperを再オープンしてくれたら活きになる

ということにした。それでhelpers Lokka.Helpersが呼び出されるより前にLokka.Helpersを拡張できるようにしておけばいいじゃない、ということでさっそく変更を施してコミットしておいた。呼び出される順番ってのもあるわけだが、それはRuby側の問題だってことにしておけばいいじゃないか、と心の中の悪魔が言うので従っておいた。以上がプラグイン作成のお作法、英語でいうところのconvention over configurationである。

ちょっと仕事が狂ったように忙しいので、ほとぼりが冷めたらプッシュしておこう。

参考文献:Pyhaの大体の仕組み

update: マージされたよ!これでみんなAkismetとAll in one SEO packとHowdyを作ればいいよ!

Posted by on 10月 18, 2010 in Ruby, WordPress,

コメントを残す