废话不多说,直接说blogspot博客采用多说评论的常见问题及解决办法。
问题一:多篇文章显示为同样的评论
问题分析:如果我们在blogger站上发表文章的时候不去指定文章链接,那么blogger默认的文章链接格式就是类似于
http://www.choublogger.com/2013/03/blog-post_5044.html
http://www.choublogger.com/2013/03/blog-post_9.html
这样的链接。如果多说后台设置不当,这样的链接会被当作一片文章的不同分页,因此显示为一样的评论。
解决方法:登录多说评论的管理后台,将设置中的 多页文章网址替换规则 设置为 不使用替换规则 即可。
问题二:手机页面和PC桌面浏览同一篇文章,显示的评论不同
问题分析:手机浏览blogger博客的时候,会被跳转到网页地址后面跟上了 ?m=1 的字样,这就导致多说误以为这和原文链接是两篇不同的文章,因此显示了不同的评论。
解决方法:登录多说评论的管理后台,将设置中的 忽略网址“?”后面的参数 填入 m 即可。
问题三:已经存在的多说评论指向错误网页,但是评论链接的title属性还是正确的
问题分析:未知,偶尔会出现,且多说后台无法更改评论内容及链接
解决方法:加载多说评论框时,最好把所有的参数都加上,核心参数包括 data-author-key data-thread-key data-title data-url 这四个,如果有上述问题,这四个参数可帮助解决问题。
2013年3月20日星期三
blogspot博客采用多说评论的常见问题及解决办法
2013年3月16日星期六
推荐一个skydrive的外链工具
前面曾经提到,如果采用了一个blogger模板,其中很多图片来自墙外,那就需要修改这些图片到国外的稳定未屏蔽图床,或者干脆国内的图床。
其实这时候采用skydrive是个比较平衡的方法,skydrive来自微软,鉴于微软与我共保持了强大而稳定的政府关系,skydrive还是始终活在大墙内外的。
skydrive为每个用户提供了高达25G的免费空间,不用真浪费了。但是我们从skydrive分享的图片是拿不到外链地址的,damn it,好在功夫不负有心IT攻城狮,网上有不少转换skydrive外链的工具。我一般用的是这款
http://www.crifan.com/files/tool/html/genSkydriveExtLink.html
2013年3月14日星期四
获取blogger博客的全部文章列表
如果想要获取blogger博客的所有文章列表,可以使用如下的javascript脚本:
2013年3月10日星期日
如何在模板中区分主页和其他页
为了区分主页和非主页,可以使用这段代码
<b:if cond='data:blog.url == data:blog.homepageUrl'> 这里放置主页才需要的内容 <b:else/> <a expr:href='data:blog.homepageUrl' title='Home'>返回主页</a> </b:if>
2013年3月8日星期五
删除quickedit的扳子图标
直接介绍过,可以如何隐藏quickedit快速编辑的扳子图标,不过这仍然是网站的死链之一。然而还有个另外的方式彻底解决苦恼。即将模板代码中所有的
<b:include name='quickedit'/>
都改为
<!-- <b:include name='quickedit'/> -->
2013年3月6日星期三
一个蹩脚的相关文章调用
所谓蹩脚,是因为这个相关文章调用的代码及其不成熟,只能调用当前文章的最后一个标签的相同标签文章的最近5篇。
首先在</head>之前方这段代码
<b:if cond='data:blog.pageType == "item"'>
<script type='text/javascript'>
function cat(json){
var div = document.getElementById("re_po");
var myhash = {};
div.innerHTML = '相关文章'
for (var i = 0; i < 5; i++) {
var entry = json.feed.entry[i];
var posttitle = entry.title.$t;
var posturl = entry.link[4].href;
if ('<data:blog.url/>' != posturl){
div.innerHTML = div.innerHTML+"<li><a title='"+posttitle+"' href='"+posturl+"'>"+posttitle+"</a></li>";
}
}
}
</script>
</b:if>
2013年3月4日星期一
如何获取blogger站的所有标签
使用Javascript来获取blogspot站的所有标签,示例代码如下,这是通过博客的feed抓取的,要举一反三啊:
<script>
function cat(json){
var label = json.feed.category;
var lst=[];
for (i=0; i<label.length; i++){
lst[i] = label[i].term;
}
alert(lst.sort());
}
</script>
2013年3月2日星期六
几个blogger模版和技巧站
年前找到的几个的blogger模版和/或技巧站
这个在墙外 lordhtml.blogspot.com
这个是在墙内可以访问的 www.ehsany.com www.bloggertipandtrick.net
2013年2月28日星期四
代码高亮的其他配色
前面提到了如何将代码高亮显示,这里说一个其他配色的高亮代码。只需要修改老方法的加载配色的一句代码:
<link href='http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/>
将上面这句替换为下面的任何一句皆可,每一句代表一种配色方案:
<link href='http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/>
2013年2月22日星期五
控制手机页面widget的隐藏或显示,或者显示特定代码
我们可以通过添加参数使得widgets不显示在博客的手机页面中,比如这段代码中 mobile='no' 则为隐藏,另外mobile的值也可以是'yes'或者'only'
2013年2月16日星期六
如何移除模板中自带的来自blogger的css
和前一篇文章类似,blogger模板里会自动加入诸如
<link type='text/css' rel='stylesheet' href='//www.blogger.com/static/v1/widgets/1937454905-widget_css_bundle.css' />
一类的css调用,而这些css是来自blogger的,不翻墙没法拿到啊亲。另外这也是blogger后台自动添加的,所以用老办法将这些调用语句注释掉!
首先还是要到博客管理后台的模板HTML编辑处,找到如下代码
<b:skin><![CDATA[
然后再找到如下代码
]]></b:skin>
2013年2月14日星期四
如何移除blogger自带的javascript
如果查看一个Blogger建立的博客的源代码,9成会发现类似这样的语句
<script type="text/javascript" src="//www.blogger.com/static/v1/widgets/4127629733-widgets.js"></script>
很不幸,这是blogger自动添加的,这是在墙外的,你在博客后台的HTML编辑器里也找不到这样的语句。
为了加快网页加载速度,只好取巧来注释掉这些js的调用了。仍然到博客管理后台的模板的HTML编辑处,找到如下代码
</body>
然后替换成如下代码,注意是替换
2013年2月10日星期日
另外一个语法高亮的方法
首先需要修改博客的HTML,在</head>之前加入下面这些语句:
<!--SYNTAX HIGHLIGHTER BEGINS--> <link href='http://alexgorbatchev.com/pub/sh/current/styles/shCore.css' rel='stylesheet' type='text/css'/> <link href='http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css' rel='stylesheet' type='text/css'/> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js' type='text/javascript'></script> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCpp.js' type='text/javascript'></script> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCSharp.js' type='text/javascript'></script> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushCss.js' type='text/javascript'></script> <script src='http://alexgorbatchev.com/pub/sh/current/scripts/shBrushJava.js' type='text/javascript'></script>
2013年2月4日星期一
使用prettify对代码进行语法高亮设置
prettify是google提供的一款源代码语法高亮着色器,主页见 https://code.google.com/p/google-code-prettify/ 。只要在blogger模板里加几行代码,就可以实现在发表文章时候的代码语法高亮,并且提供若干种模板供使用。
prettify提供了css和js供下载,可放于自己的服务器,下载地址为 https://code.google.com/p/google-code-prettify/downloads/list ,另外也可以使用google code服务器上的代码。
打开blogger模板编辑,在<head>与</head>之间添加如下语句:
<link href='http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css' rel='stylesheet' type='text/css'/> <script src='http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js' type='text/javascript'></script>
修改<body>为<body onload='prettyPrint()'>并保存模板。
2013年1月29日星期二
锁定后台Layout中小组件的位置
后台Layout中小组件都是可以鼠标拖动换位置的,如果固定某些小组件使其无法拖动呢,举个例子。
博客侧边栏的友情链接是个小组件,对应后台Template的HTML代码中的
<b:widget id='LinkList1' locked='false' title='链接客儿' type='LinkList'>
把locked='false'改为locked='true'就可以了,保存看看。
2013年1月25日星期五
自定义评论系统之整合多说评论
我们需要从多说获取两类数据,一类是评论和评论框需要被用来显示在单文章页面上,一类是评论数显示在首页文章列表内。
多说提供的通用代码如下:
<!-- Duoshuo Comment BEGIN -->
<div class="ds-thread"></div>
<script type="text/javascript">
var duoshuoQuery = {short_name:"你的多说二级域名"};
(function() {
var ds = document.createElement('script');
ds.type = 'text/javascript';ds.async = true;
ds.src = 'http://static.duoshuo.com/embed.js';
ds.charset = 'UTF-8';
(document.getElementsByTagName('head')[0]
|| document.getElementsByTagName('body')[0]).appendChild(ds);
})();
</script>
<!-- Duoshuo Comment END -->
详细区分一下,<div class="ds-thread"></div>才是评论和评论框,下面大段的javascript代码是获取评论用的。
2013年1月23日星期三
自定义评论系统之定位篇
Blogger自带的评论系统不太友好,其他给Blogger用的第三方评论系统在国内也很不稳定。修改博客的评论系统迫在眉睫,国内有好多很好的第三方社会化评论系统,比如多说、友言、贝米、评论啦、灯鹭。我现在的评论系统就是采用的多说,基本上符合常见的评论风格了吧,首页显示评论数,单页显示所有评论。
先定位原先的评论,这是第一步。为了找到哪儿是评论,先要打开评论(废话!)。到管理后台的Settings - Posts and comments,将Comment Location修改为Embeded,其他的选项也可。
定位工作我用的工具是firefox + firebug,chrome更方便,直接审查页面元素即可。打开自己的博客,找两个地方,一是首页显示评论数的地方,另一个是单页显示所有评论以及评论框的地方。重要的是看,这些地方位于哪个div里?这个div的id和class分别是什么。我的是<span class="post-comment-link">以及<div id="comments" class="comments">。
返回博客后台的Template,点击Edit HTML按钮,在弹出的窗口中选中Expand Widget Templates,然后查找class='post-comment-link'以及class='comments',此处为单引号。
2013年1月21日星期一
如何隐藏quickedit快速编辑的扳子图标
我们在Blogger博客后台的Layout里可以把Post的quickedit图标隐藏,但是侧边栏的图标还在!奶奶的,关键这个图标在墙外!
告诉大家隐藏所有页面的扳子图标的简单办法,注意只是隐藏,元素仍停留在页面,修改HTML,在顶部css出添加如下代码:
.quickedit{display:none;}
2013年1月17日星期四
三个Blogger技巧/模板网站
http://24work.blogspot.com/
http://www.bloggerplugins.org/
这都是介绍Blogger博客的技巧的网站
http://www.way2blogging.org/
这里有Blogger的小插件、教程以及模板
2013年1月14日星期一
如何移除模板后台的blogger widget javascript
Blogger系统会自动在后台加载形如
<script type="text/javascript" src="//www.blogger.com/static/v1/widgets/4127629733-widgets.js"></script>的blogger widget javascript,由于这些js直接来自blogger,不幸的又中枪了。而且我们到博客后台的HTML编辑页面是找不到这行代码的。绝不悲催,我们有招儿,解决办法就是把这些js注释掉。
注意,这项更改可能会打乱你的博客布局,因为直接关系到各个widget小工具的效果。
首先到博客后台模板的HTML处查找
</body>找到之后做如下替换,注意是替换
<!--<div id='do not remove this text if you are a real blogger'/></body>--></body>保存、关闭,完成!
打开你的博客,查看一下源文件,你发现带有widgets.js的这行代码被注释掉了,奶奶个熊的不易啊!