menu

iline主题的手持设备支持

写第一个wordpress主题,我用了约两天的时间,设计绘制PSD稿1天,前端代码1天,但那个主题我完全已经忘记是怎么回事了,显然已经成了豆腐渣工程。一个仅仅外观比较清爽的主题,没有任何额外的思考。于是,琢磨着各种各样的想法,就有了现在这个博客所使用的主题,名字叫iline,就是”爱线条”的意思。而这个主题从开始写到现在,悄然已经过去了半年了…

3个月时间构建结构,3个月时间构建功能,有空就改进一点点,慢慢打磨出来的自己的主题,不过离完成却仍然还有很长的路要走。

Read more... »

新的wordpress主题

自从尝试做了swordis主题之后,对wordpress的主题也有所认识。于是决定做一个自己的主题。并且这次和上次不同,是很认真地要做完的。名字还没有想好,但是目标很明确:

  • 没有图片的纯CSS主题。意味着线条和空间是首要设计元素。
  • 必须过XHTML1.1以及CSS3验证。CSS3阴影和变换等,由于有前缀,所以即使使用也会暂时注释掉。
  • 通过主题单元测试( Theme Unit Test )。这是一组严酷的内容兼容性检测。
  • 流体布局。右边栏,因为我调查下来,比起侧边栏在左面,似乎更多人习惯在右面。
  • 弹性em值。
  • 兼容所有主流浏览器,包括IE6在内。
  • 以及良好的可访问性和自适应性。

这些天从睁开眼睛开始我就在思考怎么把这个新的主题写好。主要考虑的是线条和颜色的虚实,实际上和篆刻类似,如何把自己其他方面的知识应用进去,就是这次的主要问题。

最大的挑战应该还是来自IE6的,因为这次不能写违规的hack,也不能用IE的私有属性。其实早该如此,IE6虽然仍旧苟延残喘,但是终究会被历史的洪流冲走的,我坚信这IE8成为下一个IE6的时代的来临。

前端工作类似一道工艺,相同的设计,工艺不同,价值也会天差地远

上次试作的主题,设计用了半天,HTML化也是半天,总共才一天时间,加上才第一次做主题,自然漏洞百出。虽然大的问题暂时也没有,但是代码级别差距很大。这次截然不同,纯CSS,没有设计直接写,但是style.css我已经写了2天有余,到现在也仅仅只是有一个框架。期间数易其稿,多次改动整个布局。

现在就是主题单元测试的内容,相当周到。有多层次的页面,有混合布局、超长、超短、甚至是无标题或者无内容的文章,也有超多分类、标签的极限测试,还有何种视频嵌入,总之是应有尽有。

Read more... »

WordPress主题swordis

终于下决心挤个时间出来做个wordpress主题。但是即使做出来估计自己也不会用的囧,因为我是bito主题的铁杆fans!

用了半天时间出了个PSD设计稿,又用了半天时间HTML化。还好设计的时候就着眼于简单,所以虽然搞了一天有些头晕,但还算比较快。基于wp的default,总的来说除了comment以外的CSS都重写了。

当然,因为刚刚写好的关系,背景图还么有整合,CSS也没有优化,并且还有众多的bug。不过没关系,作为自己第一个wp主题,慢慢琢磨就行了~

已知的问题有:

  • 虽然一开始写完测试环境是通过HTML5验证的,不过自己博客上的文章一加上就超多error。
  • 只用IE6和chrome开发的,所以其他浏览器情况完全未知,尽管我都尽可能的按标准来。
  • 颜色问题还值得推敲,排版也有很多要微调下。
  • 还有好几个小图标在绘制中,所以标签、分类、评论前面现在都还是空的。
  • 功能还不全,比如搜索、RSS,还没来得及赶上去。

现在先拿出来用几天,过些时候总结出一堆问题后就可以着手改进。目标版本0.5,基本实现功能完整~

WordPress 验证码插件

原本一天一两条左右的垃圾评论自己手工spam掉问题也不是很大,不过今天貌似特别多。一转眼就十几条,审核得有点郁闷。看来最近自己的运气不太好,被机器人频繁光顾。于是只好花点时间找个验证码插件把把关。

起初找到的是Peter’s Custom Anti-Spam,似乎用的人挺多,不过看更新日期,居然还是2008-12-11,所以放弃。然后自己到wordpress插件页去找,这类插件应该不少。查找CAPTCHA(验证码)确实跳出来很多,可是我试了几个发觉不是过于复杂就是没有效果…后来选择了SI CAPTCHA Anti-Spam,这个插件无论是易用性还是功能上,都能满足要求。

这个插件功能很全,在其控制面板里有丰富的选项。可以在注册、评论、登陆启用验证,并且可以对已登陆用户隐藏验证。能改变输入顺序,还包含音频验证,flash音频验证的选项。如果觉得验证图太大,还可以启用缩小的验证图。并且在高级选项里还能设置CSS样式以及帮助信息和标签。

但并不是没有问题。

Read more... »

关闭WordPress的post revision特性

WordPress从2.6开始就多了一个比较烦人的特性,就是 post revision 。这个特性使得作者可以回顾每次更新的文章内容,可以回滚到之前的版本。这对于多人作业的博客系统来说非常有用,但是对于单独作者的个人博客来说,显得非常无用。最糟糕的是,每次还会在wp_posts中添加新的记录,如果修改的很多的话,不一会,就会让整个数据库充满revision,而那些恰恰可能是毫无用处的。

Google后从Lester的博客上找到了解决方法,虽然还有很多其他方案,但是Lester给出的办法很有效。
要关闭post revision特性,只要在wp-config.php中加入如下行:

define('WP_POST_REVISIONS', false);

同时他还提供了删除多余revision数据的SQL语句:

1
2
3
4
5
DELETE a,b,c  
FROM wp_posts a  
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)  
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)  
WHERE a.post_type = 'revision'

在执行前先备份数据库。

这样一来,数据库干净了许多,revision不会再生成,但autosave仍然有效。
在Lester博客的评论里我还看到有WP-CMS可以关闭这个特性,并提供更多关于wordpress接口的控制。