JavaScript、Ajax、HTML5(API)、Ruby…Web及び関連技術の実験&情報公開&制作物紹介。

ダイナミック・パブリッシング対応 VarHandler プラグイン

「MTプラグイン PHPizeプロジェクト」第3弾!

今回勝手にPHP対応化させていただいたのは、先日当ブログでもご紹介した、藤本壱さん作「VarHandlerプラグイン」。

ダウンロード

(どちらかを選択してください。内容は同じです。)

インストール

  1. ダウンロードしたファイルを解凍してください。
    解凍ソフトに「ディレクトリ構造を**」というオプションがある場合は、「ディレクトリ構造を有効(再現、等)」にして解凍すると、以下のようなディレクトリ構造が生成されます:
    [php]
      ┗[plugins]
        ┗(9個のPHPファイル)
  2. 解凍して得られた(php/plugins/ 以下の)9個のPHPファイルを全て、[MT]/php/plugins/ フォルダ内にコピー(アップロード)してください。

使い方

Six Apart - Movable Type プラグインディレクトリ の紹介記事にて、使用方法が簡潔にまとめられています。ぜひそちらのほうを参照してください。
またもちろん、オリジナルサイト(変数処理を改良するプラグイン(その1)(その2))も参照してください。

補足

提供されるテンプレートタグのうち、<MTTagValueVar>は、MT標準のテンプレートタグ <MTSetBarBlock> と機能的には全く同じものです。
(そのためか、Six Apart - Movable Type プラグインディレクトリ の紹介記事では<MTTagValueVar>について全く触れられていません。)
ただし<MTSetBarBlock>は、MT3.3x以降に新たに導入されたタグなので、MT3.2x以前で同じ機能を使用したい場合には代わりに<MTTagValueVar>を使用することができます。
逆に今まで<MTTagValueVar>を使用してきた方は、今後は標準の<MTSetBarBlock>を使用するようにした方が良いでしょう。

互換性について

標準的な使い方をする上では、現在公開されているVarHandlerプラグインと互換性があります。
ただし、以下の点に注意してください。

  • エラーが発生したときの挙動がPerl版と異なります。
  • 想定外の使い方をされたときの挙動が一部Perl版と異なります。

前者は、Perl版とPHP版のプラグインのシステムそのものが異なるためというのもありますが、Perl版では再構築時にエラーが発生した場合そこで再構築がストップしてしまいますが、今回作成したPHP版ではエラーが発生した場合そのエラーメッセージを表示内容に埋め込み、できる限りページが期待通りの表示になるよう工夫しています。
後者については、ドキュメントに記載されている使用方法をしている分には問題なく動作し互換性が保たれているので、まず心配は不要かと思います。挙動が異なるのは、「name2属性値に存在しない変数名を指定した」「value属性もname2属性も指定しなかった」等の、ドキュメント化されていない(=元々動作が保証されていない)使用方法がなされた場合のみです。

著作権・ライセンスについて

ただいま調査中です。
ソースそのものは、オリジナルの動作を完全にシミュレートする形で一から書き起こしていますので、著作権の侵害には当たらないと思われますが、ライセンスに関しては詳細が判明次第、ここに追記いたします。

なお、こちらで公開しているPHPソースおよびそれを使用したことによる問題点や気づいた点に関して、原作者に直接問い合わせをしないでください。
この記事へのコメント、もしくはトラックバック等でお願いいたします。

カテゴリ

月別 アーカイブ

OpenID対応しています OpenIDについて

このブログ記事について

このページは、あんちもん2が2007年2月28日 12:01に書いたブログ記事です。

ひとつ前のブログ記事は「ダイナミック・パブリッシング対応 MTTagInvoke プラグイン」です。

次のブログ記事は「SbCode ver.0.2 - ダイナミック・パブリッシングでの動作を変更」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。