hiroeleganceのエレガンスとは呼べない日常

WEB屋hiroelegance(ヒロエレガンス)のブログhiroeleganceのエレガンスとは呼べない日常略して「エレ日」です。YouTubeで毎週火曜0時にラジオを配信しています。ラジオの神様である伊集院光さんの深夜の馬鹿力に憧れて自己満ラジオやってます。

SSIを使わずJSにて別ブログの新着記事を表示

      2015/12/08

SSIを利用できないサーバーに
Movable TypeまたはMTOSをインストールし、
AブログとBブログを構築。

Bブログの更新情報をAブログに表示する場合

<mt:MultiBlog include_blogs="1">

<mt:Include module="ブログ更新情報" />

</mt:MultiBlog>

上記のようなMultiBlogを利用していましたが、
再構築をしないと最新の情報に更新されないので、
JSにて更新する方法を試して成功しました<
これから色々な場面で利用できそうなのでメモメモ


更新情報を表示させたいブログの
テンプレート>新しいテンプレートを作成

タイトルは適当に「新着情報JS」
本文のところに以下をコピペ↓
最新の記事3件のエントリタイトルとリンクをリストで表示させています。

document.write('<ol><MTEntries lastn="3"><li>(<$mt:EntryDate format="%y/%b/%d"$>)<a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></li></MTEntries></ol>');

【IE、Safariなどで表示がされなかったので修正しました。】
3/25閉じ方が間違っていました。

【正しい】
document.write('<hoge>');
【誤り】
document.write(<hoge>);

テンプレートの設定にてentry.jsなど名前をつけ
テンプレート種別をJavaScriptniにします
呼び出す側のブログのテンプレートに

<script type="text/javascript" src="ぱす/entry.js"></script>

と入れてあげればBブログの新着3件の記事タイトルとリンクがAブログに表示されます。

【参考にさせていただいたサイト】
フッターなど共通部分を外部JS化する //Javascript
jpgのバナー画像をJS化するカスタマイズだったのでMTタグと組み合わせたら
JSとして正常に吐き出されませんでした

読み込み用に最新エントリーを書き出す
上記記事を参考にし、成功しました。

  広告

 - Movable Type