2009年2月7日星期六

懒得 Ctrl+V:又一个在 Blogger 回复评论的方法

更新!
我已经对正文提到的代码进行了更新。新的代码将能够自动提供所回复评论的链接信息,请参见最新的文章。谢谢支持。

之前物以类聚曾经发布过好几次关于给 Blogger 添加“回复评论”功能的方法,目前比较适用的就是使用 Flash 复制评论者名字,并手动粘贴在评论框里的方式。
不过这个方法的第二步手动复制让不少人很是迷惑,更有网友戏称这个方法是一个“半自动方法”。
今天我就再弄出来一个一键回复的方法吧,送给懒得“Ctrl+V”的朋友。

依旧是老步骤,转到“布局”,进入“修改 HTML”标签,勾选“扩展小窗口部件模板”复选框。
如果你想把“回复此评论”的链接放在每条评论的“xx 说...”之后,那么请找到
<b:if cond='data:comment.authorUrl'>
<a expr:href='data:comment.authorUrl' rel='nofollow'><data:comment.author/></a>
<b:else/>
<data:comment.author/>
</b:if>
<data:commentPostedByMsg/>
在这段代码之后添加:
<span class='comment-reply'><a expr:href='&quot;https://www.blogger.com/comment.g?blogID=BLOG-ID&amp;postID=&quot; + data:post.id + &quot;&amp;isPopup=true&amp;postBody=@&quot; + data:comment.author + &quot;#form&quot;' onclick='javascript:window.open(this.href, &quot;bloggerPopup&quot;, &quot;toolbar=0,location=0,statusbar=1,menubar=0,scrollbars=yes,width=400,height=450&quot;); return false;'>回复此评论</a></span>
代码中的 BLOG-ID 代表你所使用的 Blog 编号。可以在进入控制台之后的地址栏中看到,例如:http://www.blogger.com/post-create.g?blogID=12345678,12345678 就是你的 BLOG-ID。
就此搞定。

你还可以在 CSS 里对 comment-reply 这个 class 的回复链接修饰一番。

这个方法的优势就在于只需一次点击,Blogger 自动在评论框里为你添加要回复者的名字。如果要引用评论内容的话,不妨把 data:comment.body 加进去。不过这个传递参数的方式要在 Blogger 的允许范围内,如果传递了不合法的内容,Blogger 会用 HTTP 400 警告你...
正是因为这个原因,自动填写的 @xxx 不包含链接信息。不过对于评论不多的情况已经够用。
而这个方法的无敌之处还在于使用了 blogger 提供的 https 安全链接,即使伟大的 wall 暂时挡了一把 Blogger,来访者也可以把想说的话留下。