Languages: English • 日本語 中文(简体) • (Add your language)
模板文件是WordPress网站的基础,它们就像拼图一样生成你的网页。有些模板(例如页眉和页脚模板文件)应用在所有的网页上,还有一些模板只会在特定条件下才会用到。
传统的网页包含两个文件:
在WordPress中(X)HTML结构和CSS样式表是固定的,但是网页中的内容是由各个模板文件在后台生成的。主题文件和样式表存储在一起就成为了一个WordPress主题。要了解更多关于主题开发的内容,请参阅主题开发。
一个简单的WordPress网页由三个部分组成:头部结构、内容结构、底部结构。这些结构都是由你当前使用的WordPress主题模板文件生成的。
头部
内容部分
底部
一个WordPress主题是从位于你的主题所在路径里的index.php模板文件开始的。这个文件有两个主要功能:
在我们这个简单的页面结构里,我们只需要包含两个额外的模板文件:头部和底部,即header.php和footer.php。调用它们的模板标签看上去像这样:
<?php get_header(); ?> <?php get_footer(); ?>
为了显示你博客的日志和页面(以及定义如何显示它们),你的index.php文件必须在头部与底部调用之间运行WordPress主循环。
头部
内容部分
侧边栏
底部
许多WordPress主题包含一个或几个侧边栏以包含导航功能和关于你网站的更多信息。侧边栏是sidebar.php模板文件生成的。可以用这个模板标签将它包含进你的index.php模板文件:
<?php get_sidebar(); ?>
这里请注意,我们没有使用模板标签来获取网页的内容,那是因为内容是在index.php模板文件中的WordPress主循环中生成的。
同时也请注意,主题的样式表决定了头部、底部、侧边栏和内容部分在用户浏览器上显示的样子和位置。更多的关于WordPress主题和网页设计的信息请参见博客设计与布局.
你已经看到了WordPress是怎样在index.php模板文件中包含标准模板文件(头部、底部和侧边栏)的。你也可以在任何模板文件中包含其它的模板文件。
例如,sidebar.php中可以包含一个生成搜索栏的模板文件searchform.php。因为这不是一个WordPress的标准模板文件,所以代码有些不同:
<?php include (TEMPLATEPATH . '/searchform.php'); ?>
为了包含文件,我们可以使用PHP 命令include这个命令需要知道目标文件的具体路径(TEMPLATEPATH 是一个WordPress中的可以指向主题模板文件路径的特殊变量)。
头部
内容部分
评论栏
侧边栏
搜索栏
底部
多数WordPress主题包括各种包含其他模板的模板文件,以生成网站上的网页。下面这些模板文件就是一个WordPress网站的主模板(index.php)可以包含的典型文件:
但是,这个结构是可以被改变的。例如,你可以将搜索栏放置在你的头部文件里;也许你的设计中根本就不包含底部文件,那你就可以完全忽略它的存在。
WordPress网站的网页有两种核心页面模式。单独日志模式用来显示一个单独的日志。多日志模式用来显示多个日志或日志摘要,这种模式同样适用于分类存档、日期存档、作者存档和(通常情况下)你博客主页的正常模式。你可以使用index.php 模板文件来生成所有这些模式或是依靠WordPress的模板分级模式根据不同的情况来选择不同的模板文件。
WordPress模板分级模式解决了以下问题:
WordPress使用哪个模板文件显示特定类型的页面?
WordPress会根据标准名称自动识别某些特定模板文件,并使用它们显示特定的网页。例如,当用户点击日志标题的时候,WordPress会认为用户希望在单独日志页面上打开文档。于是WordPress的模板分级模式会优先使用single.php模板文件生成页面(如果你的主题里有single.php的话),而不是使用index.php模板文件生成。同样,如果用户点击了特别分类的链接,WordPress将使用category.php模板文件来显示,如果这个模板文件不存在,WordPress将寻找archive.php模板文件,如果这个模板文件也不存在,WordPress将使用主模板index.php来显示页面。你甚至可以使用特殊的模板文件来显示特殊的分类(更多信息请参见分类模板)。
这里有一些创建 WordPress 模板文件的技巧: