2007年9月22日土曜日

bloggerの最近のコメント問題(最終版)

最近のコメント用javaスクリプトの修正するテンプレートを公開致します。
大元はarm22さんのブログ
http://360-to-issho.blogspot.com/2007/08/blogger10.html
を若干改変したものになっています。

これまでの記録は以下のリンクを参照

http://toranekosan.blogspot.com/2007/08/blogger.html
http://toranekosan.blogspot.com/2007/09/blogger2.html

http://toranekosan.blogspot.com/2007/09/blog-post_06.html

「最近のコメント」問題(2)以前の解答スクリプトはエラーが入っていたようです。
これは当ブログの筆者がスクリプトをHTML形式でどのように表示するかで悩んで
あやまったコードを挿入していた為です。問題(3)で一応の解決を確認しております。

以下が修正ごのスクリプトとなります。
-------------------------------------------------

<div id="recent_comment_list"></div>
<script>
<!--
function recent_comment_callback(obj) {
var data = obj;
var statusHTML = '<ul>';
for (var i=0; i<data.feed.entry.length; i++) {
statusHTML+= ('<li><a href="'+data.feed.entry[i].link[0].href+'">');

statusHTML+= (data.feed.entry[i].summary.$t.substring(0,mojisu));
if (data.feed.entry[i].summary.$t.length > mojisu) {
statusHTML+= ('...');
}

statusHTML+= ('</a> - ');
statusHTML+= ('<span class="item-date">'+data.feed.entry[i].published.$t.substring(0,kennsu)+'</span>');
statusHTML+= ('<span class="item-author"> '+data.feed.entry[i].author[0].name.$t+'</span>');
statusHTML+= ('</li>');
}
statusHTML += '</ul>';
document.getElementById('recent_comment_list').innerHTML = statusHTML;
}

-->

</script>
<script text="text/javascript" src="http://username.blogspot.com/feeds/comments/summary
?alt=json-in-script&callback=recent_comment_callback&max-results=
10"></script>

----------------------------------------------------
上のスクリプトの改造方法

mojisu とかかれた部分は、表示するコメント内容の文字数です。当ブログでは10としています。

kennsuとかかれた部分は、表示する最近のコメント数です。当ブログでは10としてます。

usernameとかかれた部分はbloggerのurlがユーザー名となっているようなので、自分のに相当するのを書いてください。このブログではtoranekosanとなっています。

下のリンク先で、上のスクリプト改変してを貼り付けて、実行すると動作確認が出来ます。

http://html.appelle.jp/cgi-bin/makesouce_cgi.cgi

そして、bloggerのテンプレート:レイアウト:ページ要素追加: HTML/JavaScriptで、作ったスクリプトをコピーしてください。

7 件のコメント:

Madeleine Sophie さんのコメント...

はじめまして。この情報はすごく役に立ちました。自分のブログにも少し変えて、導入させていただきました。ありがとうございました。

あと、同じ方法を使って、投稿エントリのタイトル一覧も作ってみたので、もし良かったら見てみてください。

http://mesetudesenfrance.blogspot.com/2008/04/blog-post_6812.html

村田 仁 / jin murata さんのコメント...

読ませて頂きました!
たいへんわかりやすく、おかげさまでコメント設置欄を取り付けることができました。
ありがとうございます!

toranekosan さんのコメント...

みなさん、ご利用有難うございました。
このコメント問題に関してはリンク先のページにて公開されていたものを若干変更した形にしております。

いちいちコメントを見にいくのは大変ですしね。早くblogger自体で対応してくれないものかと思っております。

瑞穂 さんのコメント...

はじめまして。
素晴らしい!一言だけお礼を言いたくて、コメントしております。
おかげで私のブログにも「最近のコメント」を設置することができました。
ありがとうございます。

toranekosan さんのコメント...

いえいえ、こちらこそ、お役に立てまして光栄です。

googleにアカウントを作れると聞いて、興味本位に最初見た時、ブログを作れるらしいと知るやいなや、登録していました。本来の目的はメールにあったのですが。

せっかくブログを作れるのに使い勝手が良くないと嫌でしたので、かなり長い時間をかけて、「最新のコメント」へのショートカットをどうするか、web上で探索していました。

僕自身はjavaには詳しく無いので、最初にこの問題に対処した方のブログが非常に為になりました。ぜひ、そちらも訪れてください。

匿名 さんのコメント...

ありがとうございました。わたしも「最近のコメント」欄を設置することができました。わたしの場合は、最終版ではうまくいかず、第3版でうまくいきました。

toranekosan さんのコメント...

chez_toiさん、お疲れさまでした。

スクリプトはコピペで生じる問題もあったりするのですが、第3版で成功したようですので良かったですね。

しかし、bloggerの方でも対応してくれると、面倒が減ってよいのですけどね。
需要がないとは思えませんし。