2009年2月22日星期日

[转载] 让Blogger首页只显示帖子摘要的技巧

  在Blogger.com Beta改版之前,已经有人通过修改Blogger模板和设定文章模板的方式,实现了Blogger首页只显示帖子摘要的版面效果。在Blogger的帮助中,现在还能找到这个Blogger技巧的说明。请参阅:Blogger帮助:如何创建可扩展的帖子摘要?不过,如果你老老实实照Blogger的帮助说明进行修改的话,可能会发现你还是无法实现只显示帖子摘要的版面效果。本人一介菜鸟,为此整整浪费了几个小时的时间,最后在网络上四处搜索并参考了其他博客的做法,才成功的实现。

  那为什么这个版面效果是相当有用的呢?

  有些时候,你可能会在Blogger上面张贴一些很长的帖子,而Blogger首页只消放上几篇这样的帖子,页面打开的速度就会受到很大影响,而且将导致浏览者鼠标滚轮的寿命大大缩短,吓跑了访问者。这时,你可能会希望每个帖子仅显示摘要部分即可。这样一来,Blogger首页的帖子数可以列举更多,首页的信息量就可以加大,访问者可以更快的找到自己感兴趣的内容。如果读者希望阅读完整的文章,则可以单击打开一个新的页面。

  遗憾的是,这个在Blogger当中并没有办法进行设定,所以大家只好自己动手解决这个问题了。我也总结归纳了一下自己的实践过程,和大家一起分享,希望能帮到一些需要的人。请注意:本文中所提到的技巧只适合Blogger Beta新版,对于使用传统模板的同志并不适用。同时,我强烈建议使用传统模板的同志升级自己的Blogger模板。升级操作很简单、很直观,向导式的,这里不再废话,省去…×××…字。

  步骤一:必须启用“帖子页”的功能。请到后台“设置”——“存档”页面,将“启用文章页?”修改为“ 是”。如果已经改好,则跳过这一步。我实在很不解Google的这种说法,不知道为什么要叫这么个容易让人迷糊名称。其实,说白了为每个帖子生成一个静态(html)页面,这样做的好处就是可以大大加快访问的速度,地球人都知道。

  步骤二:修改Blogger的模板。请转到“修改 HTML”页面,我们必须直接修改模板,在“ 扩展窗口小部件模板”前面的小框记得打勾。这里必须提到一个概念:条件CSS。CSS中文称为样式表,其作用是控制页面显示的方式。同样的显示方式可以设计成一个类,需要用到的时候指定使用这个类就可以。维护的时候非常方便,只需要修改CSS,所有的相关网页的显示方式就会发生变化,而不用一个个网页调整。我们希望帖子在Blogger首页的时候只显示摘要,这里有一个限定条件:只在Blogger首页应用这个效果,所以这个叫条件CSS。注意看清楚代码添加的位置,错了可不行。

找到</b:skin>这个标签,在该标签的后面增加如下代码:

.........略
]]></b:skin>
<b:if cond='data:blog.pageType == "item"'>
<style type='text/css'>
span.fullpost {display:inline;}
</style>
<b:else/>
<style type='text/css'>
span.fullpost {display:none;}
</style>
</b:if>

  找到<data:post.body/>的标签,原先的代码应该是这样:<p><data:post.body/><p>

 改为:

<b:if cond='data:blog.pageType == "item"'>
<data:post.body/>
<b:else/>
<data:post.body/>
<br/><a expr:href='data:post.url'> 阅读全文... </a>
</b:if>

  步骤三:设定文章模板。请转到“设置”——“格式设定”页面,在“文章模板”框中加入如下内容,然后保存设置。

本文摘要部分.....<span class="fullpost">帖子的其余部分</span>

以后在发表新文章的时候,将帖子内容过长的部分用<span class="fullpost"></span>这一对标签包住就可以了,首页上就不会显示被包住的部分了。

没有评论:

发表评论