2007年8月29日

更新了评论输出

Blogger的RSS评论的格式有改变(所幸feeds没有改变),导致以前的方法不能用了,不过幸好找到了下面的方法。

添加一个“HTML/JavaScript ”页面元素,输入以下代码:
其中,var postshow 是控制最大评论条数的,比以前的RSS方式最大只有5条灵活多了。

<div id="newcomments">
<h2>Loading...</h2>
</div>
<script>
function compareentry(a,b){
order= Date.parse(a.published.$t.replace(/^(\d{4})-(\d{2})-(\d{2})T([0-9:]*)([.0-9]*)(.)(.*)$/,
'$1/$2/$3 $4 GMT')) - Date.parse(b.published.$t.replace(/^(\d{4})-(\d{2})-(\d{2})T([0-9:]*)([.0-9]*)(.)(.*)$/,
'$1/$2/$3 $4 GMT'));
return 0-order;
}
function handleComments(json) {
var temp = '<ul id="Feed001_feedItemListDisplay">';
var postshow=10;
var sortentry=json.feed.entry.sort(compareentry);
for (var i=0, post; post = sortentry[i]; i++) {
if(i>=postshow) break;
var title=post.content.$t.substr(0,30);
var link=post.link[0].href;
var authorname=post.author[0].name.$t;
var timestamp=post.published.$t.substr(0,10);
temp += '<li><span class="item-title"><a href="'+link+'">'+ title +'</a>-'+timestamp+'-'+authorname+'</span></li>';
}
temp+="</ul>";
document.getElementById("newcomments").innerHTML = temp;
}
</script>
<script src="http://YOURBLOG.blogspot.com/feeds/comments/full?alt=json-in-script&callback=handleComments" type="text/javascript"></script>

没有评论: