1. 前提条件
  2. Builder.pm の書き換え
  3. 最後に
  4. トラックバック (1)
更新日時
2009-02-12 19:12
永続的 URI
http://www.code-404.net/articles/movabletype/html-beautifully
タグ

前提条件

MT のテンプレートを記述する際、多くの人がその視認性を保つ為に MT 用のタグの後ろで改行するでしょう。しかし、そうした場合に生成される HTML は多くの改行が生成され、人の為の視認性が極端に落ちます。通常は、目にする事のない HTML ソースですが、気になる人は気になるものです。

なんとか綺麗にしたいが、テンプレートが見難くなるのは嫌だという人は、この記事を参考にしてみて下さい。ほんの少しの書き換えで済みます。また、以下は Version 3.2-ja-2 での話になります。それ以外のバージョンでは該当する行数が若干変わっているでしょう。

この変更方法は MT 4 以降のバージョンでは全てのテンプレート (それは MT が内部的に使用するものを含めて) でエラーになります。

Builder.pm の書き換え

Builder.pm というファイルを書き換えます。格納されている場所は /lib/MT/Builder.pm です。 23 行目を見て下さい。

    while ($text =~ m!(<\$?MT(.+?)[\$/]?>)!gs) {

以上のようなコードになっているはずです。これを以下のように書き換えます。

    while ($text =~ m!(<\$?MT(.+?)[\$/]?>(\r?\n)?)!gs) {

次に 67 行目を見て下さい。

    while ($$text =~ m!(<([\$/]?)MT($stoptag[^>]*?)[\$/]?>)!g) {

以上のようなコードを以下のように書き換えます。

    while ($$text =~ m!(<([\$/]?)MT($stoptag[^>]*?)[\$/]?>(\r?\n)?)!g) {

以上で書き換え作業は終わりです。それぞれ強調された部分が追加されたコードです。これらはつまり、 MT 用のタグの後の改行にもマッチさせているだけです。

最後に

この書き換えは、ごく簡単でしょうが書き換える場所を間違えると、エラーは出ないものの正しく HTML が生成されなくなりますので注意してください。

もしも、テンプレートで改行を削り、 HTML にて多くの改行を生成する問題を回避していても、この書き換え作業を施したところで何も変化はありません。

また、 (\r?\n)? でなく、 \n? だけでもいいかも知れません。

トラックバック

Levaquin side effects versus avelox side effects. - 2009-02-28 06:50

Levaquin side effects. Fluoroquinolones levaquin side effects. Side effects o...

トラックバック URI
http://www.code-404.net/cms/trackback/1
関連記事
検索

情報