Movable Typeでタグで括った部分を処理しない「Ignoreプラグイン」

Movable Typeでタグで括った部分を処理しない「Ignoreプラグイン」

Posted at November 22,2006 12:03 AM
Tag:[Ignore, MovableType, Plugin]

先日エントリーした「MTIgnore タグ」を Movable Type 3.2 で利用するためのプラグインです。

「タグで括られた部分を処理しない」というものですので、「プラグイン」というのはおこがましいのですが、テンプレートに色々なカスタマイズ、特に MTタグをそのまま残せるのがかなり便利と感じました。

実は、不要なMTタグにHTMLコメントアウト(<!-- ? -->)を施ししても、再構築時点ではそのMTタグは処理対象となってしまいます(Movable Type はHTMLコメントアウトを認識しないため)。つまりその分パフォーマンスに影響し、さらにHTMLソースに展開されたMTタグが残ってしまいますのでファイルサイズにも影響します。

このプラグインを用いることで、再構築対象にならず、HTMLソースにも残らないため、これらの欠点を一気に解消することができます。まだ 3.2 をお使いの方で興味のある方はお試しになってください。

なお、3.3 では MTIgnore タグがデフォルト機能としてサポートされますので、アップグレード後、本プラグインを無効にすればテンプレートに記述した MTIgnore をそのまま使うことができます。

1.プラグインのダウンロード

下記のリンクよりプラグインアーカイブをダウンロードしてください。

Ignore.zip
Ignore.lzh

2.プラグインのアップロード

プラグインアーカイブを解凍して、中にある Ignore.pl を plugins ディレクトリにアップロードしてください。
管理画面の

メイン・メニュー > システム・メニュー > プラグイン

で使用中のプラグイン一覧が表示されますので、その中に「Ignore バージョンx.xx」と表示されていればOKです。

3.タグ

このプラグインが提供するMTタグは

<MTIgnore>

です。

例えば、リスト1.1のように、一部分を MTIgnore で括ります。

リスト1.1 MTIgnore タグの使用例1

コメント1
<MTIgnore>コメント2</MTIgnore>
コメント3

この場合、MTIgnore で括られた部分は HTML に現われず、リスト1.2 のように

リスト1.2 リスト1.1 のHTMLソース

コメント1
コメント3

という表示になります。

コメント文字列だけでなく、MTタグを MTIgnore で括ることも可能です。リスト1.3 のように括れば、生成された HTML ページに MTEntries タグの内容は何も表示されません。

リスト1.3 MTIgnore タグの使用例2

<MTIgnore>
  <MTEntries> 
    <$MTEntryTitle$><br />
  </MTEntries> 
</MTIgnore>

4.エントリーの中で使いたい場合

「書いた記事をエントリーに残しておきたいけれども見られたくない」という場合は、エントリーの中で MTIgnore を利用することで、生成されたHTMLに表示されなくなります。この技を実現するには「エントリーの中でMTタグを使う」をご覧ください。*1


*1:記事の概要にあたる部分で用いた場合、MTEntryTrackbackData が展開された内容に記述が残る場合があります。

関連記事
zenback
人気エントリー
トラックバックURL


コメント

25行目の
MT::Template::Context->add_container_tag(Ignore => sub {''});

MT::Template::Context->add_container_tag(Ignore => sub {''}) if (MT->version_number < 3.3);
とすると、より安全ですよ。
MTのバージョンが3.2x以下なら <MTIgnore> タグが使えるようになるし、間違ってMT3.3xにインストールしてもタグは追加されないから競合も起きません。
MT3.2xからMT3.3xへのバージョンアップ時も問題なし。

[1] Posted by あんちもん2 : November 22, 2006 10:22 PM

>あんちもん2さん
こんにちは。
アドバイスありがとうございました。
プラグインは別途バージョンアップしたいと思います。
ではでは!

[2] Posted by yujiro : November 24, 2006 3:12 PM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)