カラクリサイクル

『輝かしい青春』なんて失かった人の雑記

Blosxom Plugin : include_file #0

追記 (2006-08-23-18:21:30+09:00)

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

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

ダウンロード

Download : include_file

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

これは何なのか

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

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

使い方

  1. $plugindir以下に放り込む。
  2. $datadirを各環境に合わせて設定する。
    • 例 : $datadir = '/home/nyarla/blosxom/flavour/inc'
  3. $datadir 以下に拡張子のないファイルを作る。
    • 例で言うなら/home/nyarla/blosxom/flavout/inc以下に作る (#1)
  4. flavourに$include_file::filenameと書く。
    • 例で言うと$include_file::siebar_item_categoriesになる。
    • そうすると$include_file::siebar_item_categoriesと書かれた場所に (#2) の様な出力がされる
    • ちなみにこれはあくまでも例です。念のため。

#1

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

#2

    <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の日本語訳についてはlicenses/MIT_license - Open Source Group Japan Wiki - Open Source Group Japan - OSDN を参照してください。

最後に

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

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