Movable Type 4 の問題点
これまでのあらすじ──
Movable Type 4 正式リリース! インストールと雑感 : 亜細亜ノ蛾 で書いた MT4 の残念なところとして、
「頭(header)スカスカ問題」
というのを挙げました(ここ、試験に出るよー)。
これがまた、header だけに頭の痛い問題で、Valid な (X)HTML にこだわる Movable Typer(造語)は、「MT4 てきテンプレート」を忌むべき存在として、後の世まで語り継がれることになりました(たぶん)。
一方、「そんなことは、ドーデモイー」という一般的なピープルは、「面白いページは無ェかー」とナマハゲの如く(もちろんソースコードを覗いたり lint ったりせず)mixi やはてダを漁るのでした──。
ApplyModifier プラグイン
それはそれとして。
頭スカスカ問題を軽やかに解決する、スマートなプラグインがあります!
The blog of H.Fujimoto:ページ先頭の改行を削除するで紹介されている、MTApplyModifier プラグインです。
使い方
たとえば MT4 標準のメインインデックスをプラグインタグで挟み込んで、
<MTApplyModifier ltrim="1">
<MTSetVar name="body_class" value="mt-main-index">
<MTSetVar name="main_template" value="1">
...
<MTInclude module="Header">
...
</MTApplyModifier>
というような記述にすると、ヘッダ部分先頭の空白がなくなります。
さらに、改行部分を取り除く、「strip_linefeeds=”1″」という修飾子が使えるのも面白いですね。
というか、「ltrim」も「strip_linefeeds」も、MT 標準の修飾子なんですよね。
なあんだ、それを早く教えてくれよ~ ´∀`)σ)Д`) ←6A のなかのひと
MTOptimizeHTML
ところで、自分は最初、MTOptimizeHTML というプラグインで頭スカスカ問題を解決しようとしたのですが、思ったようには行きませんでした。
MT Extensions: MTOptimizeHTML 1.0
このプラグインは、タグで挟み込んだ間のホワイトスペース(空白と改行)を取り除きます。
しかし、上記コードの <MTApplyModifier ltrim="1"></MTApplyModifier> 部分を MTOptimizeHTML タグに替えただけでは、<MTSetVar> が原因の改行はそのまま残ります。要するに、頭スカスカ。
かなり強力に空白を削除するプラグインなので、ページダイエットに役立つかも? サイズの大きな CSS や JavaScript ライブラリに使うなど、アイデア次第ですね。
コメント
残念ながらH.Fujimotoさんには「私の見たものとは違う」と言われてしまいましたが、ApplyModifierと同じコンセプトの(て言いますかまったく同じ動作をする)プラグインは私も1年前に作成しております。(MTSpan)
ちなみにこのプラグイン、MT3.2xのダイナミックパブリッシング環境では(グローバルフィルターの適用において)期待通りの動作をしないのでご注意ください。
詳しくは、拙ブログの「コンテナタグとグローバルフィルター on MT3.3x」というエントリーで書いております。
……てか、このエントリーがMT4に関する話題だから、すでに過去の遺産となりつつある話かもですけれど(汗)
こんにちは!(亀レスすまそ、です)
おっと、あんちもん2 さんの所はチェックしていますが、MTSpan プラグインは見逃してましたね。MTVoid も試してみます。
それにしても、プラグインで何とかするのは MT らしいですが、このあたりは標準で解決して欲しいですね……。