有時候不得不抱怨一下,Neo除了安裝困難容易令人搞爛整個Blog外,成功安裝後的「基本功能」也少得可憐。就像留言作者的連結,有時候有讀者來到留言,我們可以點選他的名字找到他的Profile或網址,偏偏Neo卻只會單純的將作者的名字顯示出來。
在參考完LVCHEN的最新回應外掛 for blogger v2.0後,我也成功的將這個功能加到Neo。打開你的neo.js並找到function updateComments(json),加入紅色的程式碼。
function updateComments(json) {
if (json.feed.entry) {
for (var i = 0; i < json.feed.entry.length; i++) {
var entry = json.feed.entry[i];
commentAuthor[i] = entry.author[0].name.$t;
if (entry.author[0].uri !== undefined) {
commentAuthor[i] = '<a rel="nofollow" href="' + entry.author[0].uri.$t + '">' + commentAuthor[i] + '</a>';}
commentContent[i] = entry.content.$t;
commentDate[i] = entry.published.$t.substring(0,10);
}
totalComments = json.feed.entry.length;
} else totalComments = 0;
updateCommentsPage(0);
}
儲存後重新上傳到自己的空間吧。什麼!?就這兩行!?對,上面兩句代表的就是如果作者連結的資料不是空的話,就將連結的網址加到作者的名字上。
12-5-2009:發現一個Bug,就是如果照先前的做法去改的話,文章作者留言的判斷會出現問題,當初我竟然連這麼嚴重的Bug都沒有發現。
這次要加上一個commentAuthorLink的全域變數。
var postTitle = new Array();
var postContent = new Array();
var postId = new Array();
var postCategory = new Array();
var postNumCategories = new Array();
var postDate = new Array();
var postPermalink = new Array();
var commentAuthor = new Array();
var commentAuthorLink = new Array();
var commentContent = new Array();
var commentDate = new Array();
var blogid, blogurl, totalComments;
var monthnames = new Array();
var startIndex = 1;
var oldestFirstOrder = 0;
再次找到function updateComments(json),加入紅色的程式碼。
function updateComments(json) {
if (json.feed.entry) {
for (var i = 0; i < json.feed.entry.length; i++) {
var entry = json.feed.entry[i];
commentAuthor[i] = entry.author[0].name.$t;
if (entry.author[0].uri !== undefined) {
commentAuthorLink[i] = '<a rel="nofollow" href="' + entry.author[0].uri.$t + '">' + commentAuthor[i] + '</a>';
} else {
commentAuthorLink[i] = commentAuthor[i];
}
commentContent[i] = entry.content.$t;
commentDate[i] = entry.published.$t.substring(0,10);
}
totalComments = json.feed.entry.length;
} else totalComments = 0;
updateCommentsPage(0);
}
最後到function updateCommentsPage(page),將commentAuthor[i]改成commentAuthorLink[i]。
if (oldestFirstOrder == 1) {
max = totalComments - 1 - (page * 10);
min = totalComments - 1 - ((page+1) * 10);
if (min < 0)
min = 0;
for (var i = max; i >= min; i--) {
disp = disp + "<dt class='comment-author'>" + "On " + dateString(commentDate[i], 0) + ", " + commentAuthorLink[i] + " said...</dt>";
if (commentAuthor[i] == blogAuthor) {
disp = disp + "<dd class='comment-body-author'>" + commentContent[i] + "</dd><br/>";
} else {
disp = disp + "<dd class='comment-body'>" + commentContent[i] + "</dd><br/>";
}
}
} else {
max = (page + 1) * 10;
if (max > totalComments)
max = totalComments;
for (var i = page * 10; i < max; i++) {
disp = disp + "<dt class='comment-author'>" + "On " + dateString(commentDate[i], 0) + ", " + commentAuthorLink[i] + " said...</dt>";
if (commentAuthor[i] == blogAuthor) {
disp = disp + "<dd class='comment-body-author'>" + commentContent[i] + "</dd><br/>";
} else {
disp = disp + "<dd class='comment-body'>" + commentContent[i] + "</dd><br/>";
}
}
希望這次不要再有什麼問題。
發佈留言