BLOGEERクラシックテンプレート 最近の投稿の内容表示

bloggerのクラシックテンプレートでは下記のように最近の投稿を10件表示するようになっているが、(クリボウの Blogger Tips: 「最近の投稿」リストあれこれが大変参考になります。)

<h2 class="sidebar-title">Previous</h2>
<ul id="recently">
<BloggerPreviousItems>
<li><a href="<$BlogItemPermalinkURL$>"><$BlogPreviousItemTitle$></a></li>
</BloggerPreviousItems>
</ul>

これを最近のコメントを表示するBLOGGER クラシックテンプレート直近コメントの取り出し見たいな感じでjavascriptを使い、最近の投稿リストからタイトルと本文の一部を取り出すスクリプト。

<div id="newentry"></div>
<script type="text/javascript"><!--
function newentry(obj) {
var data = obj;
var InsertHTML = ('<h2 class="sidebar-title">最近のエントリー10件<\/h2>');
InsertHTML += '<ul>';
for (var i=0; i<data.feed.entry.length; i++) {
InsertHTML+= ('<li>');
InsertHTML+= ('<a href="'+data.feed.entry[i].link[0].href+'"><b>');
InsertHTML+= (data.feed.entry[i].title.$t.substring(0,28));
InsertHTML+= ('<\/b><\/a><br \/>');
InsertHTML+= ('['+data.feed.entry[i].published.$t.substring(2,10)+']');
InsertHTML+= (data.feed.entry[i].summary.$t.substring(0,39));if (data.feed.entry[i].summary.$t.length > 39) {InsertHTML+= ('...');}//切り取り文字数を40以上にするとie7で止まります。
InsertHTML+= ('<\/li>');
}
InsertHTML += '<\/ul>';
document.getElementById('newentry').innerHTML = InsertHTML;
}
--></script>
<script src="http://www.blogger.com/feeds/自分のblogid/posts/summary?alt=json-in-script&callback=newentry&start-index=1&max-results=10" type="text/javascript"></script>

とまぁいつまでたってもテンプレートの修正ばかりしているのは、ただ単にサブドメインの使えるサーバーを借りていて、サブドメイン blog.peaks.jp で運用したいためだけですけど・・・後は、バックリンク関係の見直しと、前のページ、後ろページのリンクの製作と、タグリストでのページ表示時にタグ名を表示するっていうのを作ってみようと思ってます。

“BLOGEERクラシックテンプレート 最近の投稿の内容表示” への2件の返信

  1. 原因は
    data.feed.entry[i].summary.$t.substring(0,40)
    での切り取り文字数がどういうわけか40では
    だめで39で動いている

    何でだ?
    ファイアフォックスは動くねけど・・・

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください