Blosxom Plugin : include_file #0

Posted at 2006-06-15T14:23:08+09:00 in Blosxom

++[date:2006/08/23-18:21:00]

バ-ジョンアップしました。

詳しくはBlosxom Plugin : include_file #1を参照してください。

++

ダウンロード

Download : include_file

いきなりダウンロード!?と思わずに、とりあえずダウンロードしてください。 ……とりあえずって何だよ。っていうか何で一番最初に持ってきたんだと小一時間(ry

これは何なのか

$datadirで指定されたディレクトリの拡張子のないファイルを$include_file::filenameという形で flavourに取り込みます。

と言うかぶっちゃけfileプラグインのちょっと高機能版 みたいなものです。

使い方

  • $plugindir以下に放り込む。 +> $datadirを各環境に合わせて設定する。

例 : $datadir = &quot;/home/nyarla/blosxom/flavour/inc&quot; <+ +>$datadir以下に拡張子のないファイルを作る。 例で言うなら/home/nyarla/blosxom/flavout/inc以下に作る

例 : sidebar_item_categories

<div class="categories">
    <h2><span>Categories</span></h2>
    $tagging::category_list
</div>

<+ +> flavourに$include_file::filenameと書く。 例で言うと$include_file::siebar_item_categoriesになる。 そうすると$include_file::siebar_item_categoriesと書かれた場所に

<div class="categories">
    <h2><span>Categories</span></h2>
    <ul class="categories">
        <li class="blosxom">
            <a href="http://localhost/blog/categories/blosxom">Blosxom</a>
        </li>
        <li class="miscellaneous">
            <a href="http://localhost/blog/categories/miscellaneous">Miscellaneous</a>
        </li>
        <li class="others">
            <a href="http://localhost/blog/categories/others">Others</a>
        </li>
    </ul>
</div>

こんな感じなのが出力される。ちなみにこれはあくまでも例です。念のため。 <+

……なんか見づらい、そして分かりづらい。気にしてはいけない(気にしろよ)。次行こう。

fileプラグインとの違い

fileプラグインと include_fileプラグイン、どちらも 外部ファイルをflavourに取り込むと云う点では同じです。

じゃあなにが違うのかというと、fileは外部ファイルの中で変数が使えないんですが、 include_fileは外部ファイルの中で変数が使えるという点が違います。

それだけ?と思われそうですが、それだけです。……言い切ってどうすんだよ。 しかしこの違い結構大きいです。

例えば、

    $back_and_forth::link_prev
    $back_and_forth::link_next

見たいな感じの外部ファイルを作り、fileプラグインで読み込むと

    $back_and_forth::link_prev
    $back_and_forth::link_next

こんな感じでそのまま出力されます。 で、include_fileプラグインだと

    <link rel="previous" href="http://nyarla.net/blog/first-post" />
    <link rel="next" href="http://nyarla.net/blog/use-blosxom-plugins" />

こんな感じでちゃんと展開されます。このBlog作るとき重宝しました。

注意点

無限ループを作らないようにしてください。 例えば、foo_aというファイルで、

    $include_file::foo_b

foo_bを呼び出し、foo_bで、

    $include_file::foo_a

とすると無限ループになってかなりやばいです。実際に試してませんが。 レンタルサーバでやってしまうと、最悪追い出されるかもしれません。 そうなった場合、責任とれといわれても知りません。自己責任で使ってください。

ライセンス

ファイルの下のほうにも書いてありますが、Blosxomと同じMIT Licenseです。

MIT Licenseの日本語訳についてはOpen Source Initiative OSI - The MIT License:Licensing を参照してください。

最後に

……長い。見づらい。分かりづらい。三拍子そろったエントリになってるような。

あとでall about blosxomに追加しとこう。

使っているプラグイン

Posted at 2006-06-14T12:38:53+09:00 in Blosxom

現在使っている Blosxom の Plugin

リスト

  1. uselib
  2. notfound
  3. spam_blocker
  4. redirectif_noflavour
  5. dynamic_cache
  6. meta
  7. entries_template
  8. include_file(自作)
  9. pagetype
  10. entries_kache
  11. interpolate_fancy
  12. push_if_first
  13. rwbc
  14. recentwritebacks_tree
  15. override_num_entries
  16. entry_title
  17. tagging(改造済み)
  18. w3c
  19. nyarlax(自作)<<自信をもって発表します。ただし一部未実装、みたいな!>>;
  20. back_and_forth
  21. writeback
  22. rss10
  23. archives
  24. date_title
  25. list_title_at_year
  26. list_title_at_month
  27. navi(自作)
  28. same_topic(ちょこっと改造済み)
  29. paging
  30. x_double_posting_blocker

……なんかやたら多くないかコレ。まいっか(よくない)。

とりあえず解説。

横に(自作)とついてるのは自分で作ったやつです。そのうちエントリを書くかもしれません。 このBlogを購読すると確実にエントリが書かれた事を知ることができます。 つまりこのBlogを購読してね、と厚かましいことを言っているわけです。なんてやつだ。

特に自信作はnyarlax。名前の由来は nyarla + syntax というなんかてきとー感漂うネーミング。 リストに葵井巫女子ちゃんみたいなのがまじってますが気にしない。元ネタはクビシメロマンチスト。 って話がずれた。nyarlaxはMarkdwonのような記法系Pluginです。 エントリ書くのがかなりらくちん。

あとでオブジェクト指向で書き直してモジュール化したい。

横に(改造済み)とあるやつはあれこれ改造したやつです。その中でもtagging は mizzyさんの作ったオリジナルをやっつけ改造し、 リファクタリングとかやったため、なんだかよくわからないものになりつつあります。 追加した機能は

  • タグクラウドの出力
  • タグのベースのカテゴリ分け機能

です。かなり便利っぽい。って自分で言うのもなんですが。あと微妙にバグってるため使えるんだか使えないんだか よくわからないものになってます。

ちなみに Blosxom については all about blosxomがとても詳しいです。 Blosxom自体、英語圏のBlogツールなのですがリンク先は日本語です。英語苦手でも何とかなります。 ってかBlosxomが人気があるのは日本だけです。何でなんだろう?

エントリの投稿方法

Posted at 2006-06-14T12:12:12+09:00 in Blosxom

なんかあっちこっちおかしい所があるような。ちゃんとチェックしてないとか

そういう事はないんだけど、それにしても、ミスとかバグがぽつぽつとあるのは 何とかしなきゃなぁ。

あとエントリの投稿方法を確定しなければ。投稿するたびにキャッシュをごにょごにょするのはめんどい。 なんかいいものないかな。

About Me

name
Naoki Okamura
nick
nyarla
contact
nyarla[ at ]thotep.net
Category
Log
Banners
Powered by
nim