WP Theme 教程 #1:介绍
June 4th, 2007 at 10:48am 雪山飞猪 浏览: 5,105
这篇是我的关于创建 WordPress 主题 系列教程 的第一篇。我不会一次就教你所有的东西,那样只会让你更加迷惑。我向你展示的也不是 WordPress 主题制作的参考,而我所做的是一步一步的教你如何制作主题。如果你想所有关于 WordPress 主题的参考资料,请查阅 WordPress.org 的文档,设计和布局。否则就请看读我的教程。
这篇将涉及到:
- 基本规则
- 术语 / 行话
- 层式结构
基本规则:
- 规则 #1:以正确顺序关闭所有标签。
在错误关闭标签的方法中,关闭的 ul 标签是不按次序的。
每个标签都是在 < 和 > 中,是否有斜线 /,则指明这个标签是开始标签还是结束标签。如:<> 是开始标签,而</> 是结束标签。在上面的例子中,我使用 ul(无序列表)li (列表元素)标签。注意开始和结束 li 标签在开始和结束 ul 标签的里面,这就是标签正确嵌套。
- 规则 #2:每个主题至少有这两个文件 - style.css 和 index.php。index.php 告诉你的主题所有的元素该如何布局,style.css 则告诉你主题所有的元素该如何展示。下面是完整的主题文件列表(现在不用担心这个列表):
- style.css
- index.php
- home.php
- single.php
- page.php
- archive.php
- category.php
- search.php
- 404.php
- comments.php
- comments-popup.php
- author.php
- date.php
专业术语:
- Template(模板) --- 其实就是一个代码集,很多地方会利用到这个代码集,把它整合成一个代码集,就不必一遍遍输入这些重复代码。
- Template file(模板文件) --- 一个包含一个或者多个代码集(模板)文件。每个主题是由多个模板文件组成的,如:index.php,style.css,sidebar.php 等等。
- Theme(主题)或者 WordPress theme(WordPress 主题) --- 所有你正在使用的文件:文本,图像,代码等等。注意: WordPress theme(主题)和 WordPress template(s)(模板)是两个不同的东西,尽管有些人认为他们一样。
- Post(日志) --- 现在你读的就是一篇日志。此外,它是你 blog 的一个简单的条目,如:一个页面或者一篇日记。
- Page(静态页面) --- 一种特殊的 post,它不是以分类组织的。它有别于你其他的日志。注意:在 WordPress,page(页面)和 Page(静态页面)是两种不同的东西。
层式结构:
下面这幅图简单的向你展示,一旦你主题中的某个文件丢失了,WordPress 主题系统将会寻找什么。这里列出了6个文件而不是完整的13个,因为这6个是你需要或更大时间去关注的。在接下来的教程中,你将学到余下的文件。

我们可以通过他们的在图中位置知道他的重要性级别,上面,左边是最重要的,下面和右边是最不重要的
为什么会存在模板文件的层式结构或者说是重要性级别呢?因为如果 archive.php 文件(用来显示存档页面)丢失了,那么 WordPress 将会指定 index.php 去控制存档页面如何显示。
如果 single.php 模板文件丢失了呢,哪个模板文件它会去寻找用来显示单一日志呢?它会寻找 index.php。
如果你有什么问题,请放手来问,请最好给我们留言而不是给我们 email。那样的话,如果其他人寻找相同的答案就不用重复他们的问题了。
请查看目录:WordPress 主题教程系列
创建 WordPress 主题系列教程均为本站翻译,如要转载,请注明:转载自我爱水煮鱼和本文地址。
作者:雪山飞猪
原文链接:WP Theme 教程 #1:介绍
我爱水煮鱼版权所有,转载时必须以链接形式注明作者和原始出处及本声明。







1. 紫天 | June 4th, 2007 at 9:26 pm
偶得认真翻字典学习认得和记得一下那些英文才行:-(
[回复该留言]
2. sofish | June 4th, 2007 at 9:28 pm
Denis,出插件教程实际点...
[回复该留言]
3. 春晓 | June 4th, 2007 at 9:37 pm
相对插件,皮还是重要点
[回复该留言]
4. 雪山飞猪 | June 4th, 2007 at 9:59 pm
sofish,你是指教人怎么写插件还是教人怎么用现有的插件呢?
[回复该留言]
5. 雪山飞猪 | June 4th, 2007 at 10:01 pm
为什么我要翻译这些主题教程,因为当我们帮人用 WordPress 做网站的时候,如果你缺什么功能的时候,你完全可以去找到符合该功能的插件,但是你找到主题总是有些不顺心的地方,总要修改,所以知道多些怎么创建主题的方法总是好的,你们觉得呢?
[回复该留言]
6. sofish | June 5th, 2007 at 7:28 pm
嘿嘿,仅个人观点.翻译好用插件...可以方便中文菜鸟...嘿嘿...
[回复该留言]
7. 雪山飞猪 | June 5th, 2007 at 8:20 pm
其实这里面已经有很多关于插件的翻译,或者你可以让我给整理下某个插件怎么使用?嘻嘻!
[回复该留言]
8. 雪山飞猪 | June 5th, 2007 at 11:55 pm
Yes, If I translate other's post, it is required to leave the orignal author's post link, so I leave it. I don't know what is your meaning?
[回复该留言]
9. keke | June 14th, 2007 at 6:46 pm
支持,受教了,回去好好学一下!
[回复该留言]
10. yumo | July 14th, 2007 at 6:41 pm
请教问题,为什么我注册了博客,能看到自己的页面但进不了编辑后台???
[回复该留言]
11. 雪山飞猪 | July 14th, 2007 at 9:01 pm
你注册了博客,那就是不是在自己主机的 WP,那应该问你的 BSP 啊!
[回复该留言]
12. sctronlinux | July 17th, 2007 at 1:40 pm
有没有Wordpress的程序代码分析?
[回复该留言]
13. 雪山飞猪 | July 17th, 2007 at 2:45 pm
你是指源代码分析吗?这个好像比较难,个人能力还没有达到那个层次!呵呵
[回复该留言]
14. zc | July 30th, 2007 at 5:35 pm
源代码?学php去吧...
[回复该留言]
15. zc | July 30th, 2007 at 6:22 pm
$I leave a comment in here=(回15楼:源代码?去学php吧)
刚看到#6 Sidebar (and Categories) — 侧边栏,有两栏的修改成三栏(加一栏做ads什么的)教程么?也是用div+css实现的么?wp研究第二天!厚着脸问一下......
[回复该留言]
16. ideaonly | August 2nd, 2007 at 5:10 pm
19楼的朋友请教的问题也是在下面临的问题之一:
如何改两栏成三栏?
希望得到Denis和其他知情朋友的分享啊!先谢谢了
[回复该留言]
17. 雪山飞猪 | August 2nd, 2007 at 5:26 pm
这个问题我没有考虑过,呵呵,什么时候去搜索下,给大家写篇文章咋搞!呵呵
[回复该留言]
18. ideaonly | August 2nd, 2007 at 6:33 pm
如果不行我就只有找个三栏的theme来改,但是问题就是三栏的我没有找到我很喜欢的。所以想把那个两栏的改成三栏的。你加油找找哈,人民期待着你啊。:)
[回复该留言]
19. ileeo | August 21st, 2007 at 7:39 pm
看样子很详细.
[回复该留言]
20. quanquan | October 20th, 2007 at 4:35 pm
有时间我就来学学。博客需要留住人主要还是靠内容啊!
[回复该留言]
21. My-Hou不務正業 | December 5th, 2007 at 12:08 am
最近几天都在这泡了
[回复该留言]
22. Fuson | December 6th, 2007 at 1:05 am
一直想学习这方面的东西,会长期关注!!
[回复该留言]
23. 黑色饼干 | December 7th, 2007 at 12:43 am
呵呵,慢慢看完所有的,继续下一篇
[回复该留言]
24. Eric | January 8th, 2008 at 5:18 pm
我要收藏起来,对于不懂PHP的我们来讲真是太受益了。感谢您的分享,辛苦了,大大~~~
[回复该留言]
25. brinsh | May 5th, 2008 at 8:54 am
这个有没有可视化的编辑软件,像dreamweaver什么的行吗?
[回复该留言]
26. 电影 | June 14th, 2008 at 2:34 pm
搬个凳子,慢慢学习,哈哈!
[回复该留言]
27. joseph | July 7th, 2008 at 7:57 pm
不错,认真学习下
[回复该留言]