Movable Type 4 のデフォルトテンプレートで @import が表示される問題

Movable Type 4 のデフォルトテンプレートで @import が表示される問題

Posted at August 20,2007 2:15 AM
Tag:[MovableType]

いくつかのブログで「Movable Type 4 のデフォルトテンプレートを使用すると @import が上部に表示される」という事象が発生しているようです。

原因はデフォルトテンプレートの「ヘッダー」の7行目にある、

<$MTInclude identifier="styles" trim_to="0"$>

が展開されてしまうためですが、当サイトでは再現しませんでした。

検索してみたところ、Perl 5.8.0 のバグのようです。

この行は styles、つまり「スタイルシート(メイン)」をインクルードするのですが、「最初のN文字を取り出す」という trim_to 属性の値が 0 になっているということは、このタグでは何も表示されないのが正しい動作のところ、Perl 5.8.0 では表示されてしまうようです(7行目が何故必要かについては理解できていませんStyleCatcherで必要らしいです)。

ちなみに、8行目で、

<link rel="stylesheet" href="<$MTLink template="styles"$>" type="text/css" />

と、「スタイルシート(メイン)」を取得しているので、7行目は style 要素で括るのではなく、参照元サイトにある通り、

<MTSetVarBlock name="__null__">
<$MTInclude identifier="styles"$>
</MTSetVarBlock>

が良いでしょう。

追記:あんちもん2.Labさんの MTVoid プラグインでも同様の結果を得られます。

関連記事
トラックバックURL


トラックバック

Movable Type 4 でヘッダーにCSSが表示される!? from merisly
Movable Type 4 のデフォルトテンプレート。 ? なんかヘッダーに@importの文が表示されてしまいます。 ? どうやらperlのバージョン... [続きを読む]

Tracked on August 24, 2007 9:19 AM

MT4をインストールしたら上部に@importが表示される from tatsuyakun.jp
なんじゃこりゃ、mt4をインストールしたら上部に@importとcssファイルへ... [続きを読む]

Tracked on September 17, 2007 8:08 AM

Movable Type 4 のデフォルトテンプレートで @import が表示される問題 from blog
ずっとやってみたかったMTでのブログ構築がやっとできました。テンプレートのカスタ... [続きを読む]

Tracked on September 20, 2007 11:28 PM

MT4 のテンプレートで @import が表示される from blog
ずっとやってみたかったMTでのブログ構築がやっとできました。テンプレートのカスタ... [続きを読む]

Tracked on September 20, 2007 11:32 PM
コメント

当座の解決策として、拙作の MTVoidプラグイン を使用する、という方法もあります。
て言いますか、この問題が発生して「中身を評価だけして何も出力しないタグがあればいいのにね」という声を耳ざとく?まえて速攻で作りました(笑)
<MTSetVarBlock>の代わりに、以下のようにすればOKです:

<MTVoid>
<$MTInclude identifier="styles"$>
</MTVoid>

参照: ↓の投稿者名のリンク先を参照

ちなみに
> (7行目が何故必要かについては理解できていません)
StyleCatcher 絡みだそうです。

問題のMTIncludeは、ページに出力する必要は無いけれども、Includeするテンプレートに(StyleCatcher利用時に)書かれているSetVarを評価する必要がある...

出典:mixi内、同問題についてsixapartに問い合わせをした方が先方から得た回答の報告内容より

私も StyleCatcher は使用していないので全然気がつかなかったのですが、そういうことらしいです。

[1] Posted by あんちもん2 : August 20, 2007 3:18 AM

>あんちもん2さん
こんにちは。
情報ありがとうございました。
StyleCatcherとは気がつきませんでした。

本題と関係ありませんが、少し前にメールでご連絡差し上げた、貴サイトの拙著での紹介、不都合ありましたらご連絡ください(ご返事を頂いているようでしたらすいません)。

[2] Posted by yujiro : August 20, 2007 10:03 AM
コメントする
greeting

*必須

*必須(非表示)


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

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

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

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