MovabletypeにMTタグを含んだ外部ファイルを表示させる方法

このQ&Aのポイント
  • MovabletypeにMTタグを含む外部ファイルを表示させる方法について解説します。
  • MT3.35を使用している場合、MTタグが外部ファイルで正しく表示されないことがあります。
  • エンコードの変換や<MTInclude>タグを使用してファイルを読み込むなど、いくつかの方法を試すことができます。
回答を見る
  • ベストアンサー

MovabletypeにMTタグを含んだ外部ファイルを表示させたい

http://wandering-wind.jp/archives/2003/1128132928.php こちらのページを参考にして、JavaScriptを使いカテゴリーページに他のカテゴリの一覧を表示させたいと思っております。 MT3.35を使っています。 以前同じ事をしたのですが、その際はうまくいっていましたが、今回はタグのまま表示されてしまうのです。 <手順> 1.以下のソースを外部のテキストファイル(.js)改行無しで保存。 --------------------------------------------------- document.write('<ul><MTEntries category="カテゴリ名"><li><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li></MTEntries></ul>'); --------------------------------------------------- ※カテゴリ名のところは、もちろん該当するものを入れています。 2.MTテンプレート画面で「新規テンプレートを作成」  例)  テンプレート名/test  出力ファイル名/test.js  このテンプレートにリンクするファイル/js/test.js 1.のソースを貼り付け、保存。  「インデックス・テンプレートを再構築するときに、このテンプレートを自動的に再構築する」にチェック 3.カテゴリーアーカイブのページ内に以下のソースを設置。  -----------------------------------------  <script type="text/javascript" src="<$MTBlogURL$>js/test.js"></script> ----------------------------------------- 4.再構築を行う。 この方法でやってみたのですが、リンクの貼られた<$MTEntryTitle$>と表示されてしまいました。JavaScriptは無事機能していると思われますが、いかんせんMTタグが変換されておらず。。。 カテゴリーアーカイブだけでなく、メインページでもエントリーアーカイブページでも同じなのです。 思いつくトラブルとして、 ・エンコード無変換かも。  →ShiftJISからUTF-8へ、秀丸を使って変換・保存してアップロードしたが変化無し。 思い当たる他の方法として ・<MTInclude>タグを利用してファイルを読み込む →<$MTInclude file="test.html" $>として読み込んでみたが、同様にMTタグのままで表示される。 こんな感じです。 どうすればMTタグを有効にして外部ファイルとして読み込めるのでしょうか? どうぞ宜しくご指導いただきたく存じます。

質問者が選んだベストアンサー

  • ベストアンサー
  • Muller3
  • ベストアンサー率81% (800/979)
回答No.1

ソースをコピペしてやってみましたが、問題なくできました…(^^; 余談ですが、新規テンプレート作成する際、FTPで外部ファイル作らなくても テンプレート名:test 出力ファイル名:js/test.js これで保存すればMTはフォルダ(js)とテンプレート(test.JS)を自動的に作ってくれますよ。 php化してあればphpインクルードとか使えるかもしれませんが、でもMTタグがまんま出てくるのでしたら、方法どうこうの問題ではないような気も。やっぱりそのjsファイルじゃないかと…。 一度アップされたjs外部ファイルを削除して、上に書いた、MT管理画面から新規テンプレートでjsファイルを作成する方法でやってみてはどうでしょう。私はいつもその方法で外部jsファイル作ってます。

nanatam
質問者

お礼

ありがとうございました!テンプレート画面から改めて作り直してみたら、無事表示されました!!!( ;∀;) カンドーシタ 昨日から散々悩んできて、スッキリしました!!!

関連するQ&A

  • MovableTypeでサイトの再構築ができません。はじめて見るエラーです

    大変困ってます。いろいろと改造実験しながらMTを触っているのですが新しい月別エントリーアーカイブを作成して、公開の設定にもエントリーアーカイブの月別アーカイブを追加して再構築したら、 「日付アーカイブ「Monthly20080101000000」の再構築に失敗しました: テンプレート「エントリー・アーカイブ」の再構築に失敗しました: <MTEntryTitle>タグでエラーが発生しました: MTEntryTitleタグが、エントリーのコンテキスト外で使われた可能性があります。<MTEntries>コンテナの外に誤って記述していませんか?」 てなエラーが出てきてしまいました。エントリーの保存も同じエラーが出てきてしまいます。即座にすべてのアーカイブを正常なときに戻して再構築しても同じエラーが出てきてしまいます。これは公開の設定から日付アーカイブを削除してしまえば良いのでしょうか?もしくはFTPでサーバーから削除してもかまわないファイルかフォルダがあるのでしょうか? まず”日付アーカイブ「Monthly20080101000000」の再構築に失敗しました”が初めてなんです。なんなんでしょう・・・・・ 困り果ててしまって、真っ白です・・・・。どなたかお助けください。 よろしくお願いします。

  • MTのテンプレートのカテゴリー設定でエラーが出る。

    皆様よろしくお願い致します。 MT・HTML初心者です。プラグイン「pm_headchanger.pl」を使っています。以下はメインページのテンプレートのソースになります。 <MTSetVar name="main_index" value="1"> <MTSetVarBlock name="page_title"><$MTBlogName encode_html="1"$></MTSetVarBlock> <$MTInclude module="ヘッダー"$> <div id="content"> <!-- info --> <$MTInclude module="インフォメーション"$> <h2>インフォメーション(又はおすすめ)</h2> <!-- 900)オススメのカテゴリーを先に作成して再構築してください。   カテゴリー作成前に再構築を行うとエラーになります。 --> <MTEntries category="900)オススメ"> <h3><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></h3> <div class="doc"> <$MTEntryBody$> <MTIfNonEmpty tag="EntryMore"> <div class="next"> <a href="<$MTEntryLink$>">続きを読む</a> </div> <br style="clear:both;line-height:0px;" /> </MTIfNonEmpty> </div> </MTEntries> <!-- 新着記事 900)オススメを除いて表示します。--> <h2>新着記事</h2> <ol> <MTEntries lastn="15" offset="0" category="NOT 900)オススメ"> <li><a href="<$MTEntryLink$>" class="c1"><$MTEntryTitle$></a></li> <br style="clear:both;line-height:0px;" /> </MTEntries> </ol> </div> <$MTInclude module="サイドバー"$> <$MTInclude module="フッター"$> 以上です。コメントに先にカテゴリを作るよう指示があるので、MTのダッシュボード→一覧のカテゴリ→トップレベルカテゴリを作成で、「900)オススメ」を作成しました。そして再構築をすると、以下のエラーが表示されます。 テンプレート「メインページ」の再構築中にエラーが発生しました: &lt;mtEntries&gt;タグでエラーがありました: category属性でエラーがありました: NOT 900)オススメ 以上です。しかしなぜエラーになるのかがわからないのです。解決策をご存知の方がいらっしゃいましたら教えて頂けないでしょうか。 お忙しいとは思いますが、皆様何卒よろしくお願い申し上げます。

  • MovableTypeのMTEntriesタグの使い方をおしえてください。

    こんにちは。MovableType3.32を利用してブログを作っています。MTEntriesタグにlastn="10" offset="5" category="dog" をつけて ・dogカテゴリの中から ・最新の記事5件を除き ・10件のタイトルを表示 としたいのですがどうもうまくいきません。 ------------------------------------------------------ <ul> <MTEntries lastn="10"offset="5" category="dog"> <li><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li> </MTEntries> </ul> ------------------------------------------------------ としますと何も表示されず ------------------------------------------------------ <ul> <strong><MTEntries lastn="10" offset="5" category="dog"> </MTEntries></strong> <div align="left"><MTEntries lastn="10" offset="5"></MTEntries></div> <MTEntries lastn="10" offset="5""><li> <div align="left"><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></div> </li> </MTEntries> </ul> ------------------------------------------------------ とすると確かに最新の5件を除く10件が表示されるのですが、dogカテゴリだけの指定を無視して全カテゴリの最新記事5件を除く10件のタイトルが表示されてしまいます。 私のやり方が間違ってると思いましてMovableTypeのオンラインマニュアルやタグの使い方を乗せてらっしゃるページを参考にしてみたのですがうまくいきません。 どのようにすればよいかアドバイス頂けると助かります。

  • Movabletypeです。

    カテゴリー・アーカイブ「3」の再構築に失敗しました: テンプレート「カテゴリー・アーカイブ」の再構築に失敗しました: <MTEntryCategories>タグでエラーが発生しました: MTEntryCategoriesタグが、エントリーのコンテキスト外で使われた可能性があります。<MTEntries>コンテナの外に誤って記述していませんか? 上記のようなメッセージが出力されました。 何が原因なのでしょうか? どなたか教えてください。

  • [MT]エントリー内でMTタグが使えるようになるプラグインを紹介してもらえませんか。

    テンプレートではなくエントリー内でMTタグが使えるようにしたいと考えています。 エントリーに<img alt="<$MTEntryTitle$>" src="<$MTBlogURL$>/image.jpg" />と入れるとタグがそのまま表示されます。 プラグインを入れれば使えるようになるらしいのですが検索してもよくわかりません。 そのようなプラグインやそれを紹介しているページを教えてもらえませんでしょうか。

  • カテゴリー・アーカイブでも全体の最新エントリーを表示

    MovableTypeでカテゴリー・アーカイブで、以下タグを入れると、そのカテゴリーの最新エントリーが表示されます。 <MTEntries lastn="5"> <p class="entryCol"><a href="<$MTEntryLink$>" title="<$MTEntryTitle$>"><$MTEntryTitle$></a></p> </MTEntries> これを、全体の最新エントリーを表示させたいのですが、その場合の必要なたぐを教えていただければ助かります。

  • mt4 ウィジット削除で再構築エラー

    MT初心者です。教えてください。 MovableType 4.2 で、右側に出る 「アイテム」という写真のサムネイルと MT4のでかいロゴを消したくて 「デザイン」⇒「ウィジット」というところから、 その2つのウィジットをけしたら、 インデックスページの再構築ができなくなってしまいました。 その他はテンプレートを街のやつに変えただけで ソースはいじってません。 ===以下、再構築エラーコメント====== close テンプレート「メインページ」の再構築中にエラーが発生しました: <mtInclude>タグでエラーがありました: error in module サイドバー: テンプレート「サイドバー」の再構築中にエラーが発生しました: <mtIf>タグでエラーがありました: <mtWidgetSet>タグでエラーがありました: <mtinclude>タグでエラーがありました: error in widget ホームページウィジェットグループ: テンプレート「ホームページウィジェットグループ」の再構築中にエラーが発生しました: <mtIf>タグでエラーがありました: <mtInclude>タグでエラーがありました: 「アイテム」というウィジェットテンプレートが見つかりませんでした。

  • mtのトラブルについて

    現在mtブログを運営しているのですが、新しくページ内容を更新したので再構築をかけてみたら 【テンプレート「メインページ」の再構築中にエラーが発生しました: &lt;mtInclude&gt;タグでエラーがありました: header.htmlというファイルが見つかりませんでした。 】 という表示が出て再構築が終了しない事態に発展しました。 どなたか解決策が分かる人はいませんか?

  • movabletype4 初歩的な質問です。

    movabletype4を使っています。 <$MTEntryTitle$> など、テンプレートで表示が上手くできません。 MTのタグを利用するのに、何か条件などがあれば教えてください。 または、タグの機能を停止する機能があるのでしょうか。 かなり、初歩的な質問ですいません。

  • MT4.1で同一タグの付いた記事一覧表示から特定のタグだけ除外したい

    MT4.1をダイナミック・パブリッシングで使っています。 ブログ記事リストであるエントリーと同じタグがついた他のエントリーを並べて表示させたいのですが、そのなかでも特定のタグ(タグA)がついてるものだけは表示させたくないのです。 http://www.apstars.com/blog/211movable_type4/2_1.php ↑この辺りの記事を読んで真似してみたのですが、下記のやり方ではエラーになってしまいました。 <MTSetVarBlock name="entrytags"><MTEntryTags glue=" OR "><$MTTagName$></MTEntryTags></MTSetVarBlock> <MTEntries tags="$entrytags NOT タグA"><a href="<$MTEntryLink$>"><$MTEntryTitle$></a></MTEntries> エラー Parse error: syntax error, unexpected '!' in /~/cgi-bin/mt/php/lib/MTUtil.php(1196) : runtime-created function on line 1 Invalid tag filter: $entrytags NOT タグA <MTEntries tag="$entrytags">だけなら問題なく動くんですが… MTテンプレートタグのみで実現させることはできますでしょうか。 よろしくお願いいたします。