太狼文摘 记录 & 思辨

博客主题成形记

技术 - 2012/2/4

过年在家的七八天,我终于倒腾出了一款自己的Wordpress博客主题——hoobook(也就是我的博客现在的主题界面)。

为什么要做一款自己的主题呢?换句话讲,我想要什么样的主题?我心中所要主题的特征必须是“简单”。干净、简单的主题往往能够让进来的人感到轻松,虽然有些主题利用的插画等,设计很精致,但是容易掩盖内容的光芒。我想让看着聚焦于我的内容,我希望读者是为了我的文章而来,而不是因为好看才来逛逛。简洁的风格容易突出内容——Melville主题进入了我的视野。单栏设计,平面纸质阅读的感官瞬间俘获了我的心——这就是我想要的。虽然二栏或三栏能够通

过边栏等工具清晰地展现博客的信息架构和信息单元,这对于初次来到博客的读者是很有帮助的,能够引导他们看内容,但是就我个人博客点击效果看,边栏其实点击转化率很低。通过搜索进来的读者,很大程度的人都只是看看是否有相关信息后就离开;通过个人文章的运营进来的读者,往往会因为一篇文章的亲睐,有点击其他文章的兴趣,其实就算翻查一系列文章下来,订阅博客的也寥寥。所以,既然现状如此,何不就把当下的文章展现清楚呢?我觉得单栏很不错,能够让大家回归纸质阅读的体验感,沉浸感很强。

在设计过程中,我把导航栏调至顶部,符合中文博客的设计和阅览习惯,避免突兀。考虑到会与主文章内容不协调,于是,在文章详细页面中,我将导航栏移除,也避免了页面头部过重的问题。“友情链接”板块,我整合到了“关于”页面。

代码实操阶段,我并没有借用Melville的主题代码,而是利用了youed主题的代码结构——一来,Melville的主题设置部分不是很人性;二来youed主题的代码结构非常不错,博客seo做法也不错。代码修改和部署过程中都出现了几个问题,第一是RSS功能失灵(如下图),第二是fancybox效果在部署时候失灵,但是在本地却没问题。

在解决问题的时候,发现了官方的主题制作文档指导,顿时对代码结构有了更加清晰地认识。之前修改时,纯粹是线性思维,要改哪儿就改哪儿,看了上述介绍后,脑子里就有了一个树状的印象,呵呵!

对于第一个问题,根源是代码中出现了空格,即服务器在解析<?php  ……   ?>代码内容块时,如果两个<?php ?>之间出现了空行或者是结束时多打了一行空白行,那么都会影响RSS的解析。一般来说,空白多出现在主题文件中,最大可能出现在function.php(我的问题就是,该文件最后有一个空白行)。当你修改了一处保存后,如果想查看RSS功能是否已经解决时,需要先修改一篇文章内容或新建一篇文章——RSS内容要有变化,这样才能检验效果,否则还是会显示先前的缓存结果。说道缓存,最烦人了,修改了一处错误后,来想着立即检验,但是部署端由于WP Super Cache插件的作用,导致我看到的都是缓存内容,无法正常查看代码更新后的效果,困扰我好一阵。

fancybox效果失灵是由于jquery的加载冲突。在wordpress中,wp_head()函数会自动加载wordpress主题js库中的jquery文件,而该代码之前我又手动加载了jquery文件,所以会产生冲突,导致fancybox function失效。《5 Tips For Using jQuery with WordPress》很详细地说明了如何在wordpress中加载jquery文件并合理规避冲突和风险。我按照这种方法,圆满地解决了该问题。

代码还是要多写,蛮有意思的额!CSS文件压缩时,使用了“CSS整形与优化工具”。最近Facebook启动IPO,其中有一条:

黑客之道天生是崇尚动手和积极主动的。他们不会把时间浪费在讨论新想法是否可行,什么方式是最好的,马上动手开发原型,看行不行吧。Facebook办公室里另一句口号是:“代码胜于争论”(Code wins arguments)。

多写代码无害处!最近将入手一台苹果的iTouch~



扫一扫分享到微信
分享到微信

无觅相关文章插件,快速提升流量