讨论:模板文件里哪些是必须的?

这两天在给自己制作新的模板,又研究了下官方的文档,发现了下面这张模板层次结构图。

这张图解释了WP从用户给出query到最后调用正确的模板文件来产生页面的一个过程。从图中我们可以看到,WP一种支持13种模板文件。那么这十三种模板文件中,到底哪些才是必须的呢?

相册:illustration

  1. index.php

可以看到,只要对应的模板文件找不到,最后都会调用index.php,只有这个文件是逻辑上必须的,如果没有,模板根本不能加载。

  1. single.php

此文件从逻辑上不是必须,但是一般的主题都会带有这个文件。究其原因,就是单篇帖子页面和主页,有着非常大的不同,这个页面上与首页最重要的不同,可能就是评论展示了。

  1. page.php

这个文件也是一般主题常带有的,这个是页面文件的模板。那么页面又有哪些不同呢?页面作为一种常设的Post,其发布时间可能并不是那么重要的,因为这个页面一经发布,就长久存在,不过,我个人倒是认为,虽然发布时间不重要,但是更新时间确实在某些情况下还是有必要的。比如我自己用页面来展示插件的文档,那么这个文档的更新时间能够向用户传达文档的时效性,所以,我觉得,在页面展示更新时间,是否应该作为主题管理面板的一个选项给用户选择。

  1. pagename.php

这个文件不是叫pagename.php,而是说,这个模板文件也是page.php的一个变种,是page的slug来命名的,基本上,很少有主题会带有这个文件,不过呢,我觉得,国产模板的作者可以考虑带上这个文件,比如,很多博客都喜欢guestbook这样的应用,但是一般的模板文件page.php,往往不会带评论部分,作为一个模板作者来说,产生一个guestbook.php这样的事情完全是小事一桩。

  1. archive.php

这个文件其实就是展示归档的模板文件,一般来说,主题里都会带有这个文件的。不过呢,从图中我们也可以看出,归档其实可以分成四个种类的,日期归档,分类归档,tag归档,作者归档。从功能上来说,划分那么细并非是必须的,不过呢,我想对于团队博客来说,作者归档里面带上照片和作者介绍,应该是很好玩的应用吧。而对于分类归档和日期归档,可以考虑给予一些辅助检索的措施,当然,这些都可以详细展开讨论,作为一个用户,您有什么新奇的点子呢?

  1. search.php

带有这个模板文件的主题也不多,其实这个里面还是很有文章可以做一下的,不过呢,我暂时也没有很么好点子。比如在搜索页面嵌入一个google搜索,或者嵌入一个专门的带有类似suggesting那样功能的搜索框,都应该是比较好玩的吧……

  1. 404.php

当找不到文章的时候,或者永久链接失效的时候,都会进入404。404又是一个大有学问的模板文件,前段日子,google黑板报在搞404代码专题周,google都如此重视404,可见其重要了吧。以前A List Apart也写过一篇《完美404》,给出了很多有效的建议。我想,作为一个主题作者,您是不是也考虑,在您的模板中加入一个非常友好的404呢?

  1. attachment.php

到现在为止,我还没有见过哪个主题带有这个文件的呢,也可能我从来没有注意过这个问题吧,我现在的想法就是,那种专门展示照片,艺术作品的photolog,可以做一个美丽的展示单幅图片的image.php,哈哈……Updated: 哈哈,关于这个,大家可以瞧瞧梦色的文章,如何制作Gallery

========分割线========

以上都是一些我个人的想法,和我对一些模板文件的认识,难免有偏颇之处,还望大家指正。另外,写出来这个,也是想和大家讨论讨论的,哪些模板文件是您非常需要的,哪些又是您非常不需要的?

P.S. 与主题完全无关的内容,我发现Picasa Web竟然悄悄的改版了,好像更人性化了,在单幅图片浏览页面添加了上传按钮,而且图片的链接格式也发生了较大的改变,现在竟然用table来做容器了……