主题可以使用函数文件,该函数文件的文件名为functions.php,位于主题的子目录中。functions.php的功能类似于插件,如果使用的主题中有functions.php文件,WordPress初始化(管理界面和其它界面)时会自动加载该文件。functions.php文件的建议用法如下:
WordPress默认主题“Default”中带有一个定义函数的functions.php文件和一个管理界面,用户可以作为学习示例。在WordPress手册的“常用函数”中可以查到更多functions.php文件的相关信息。
主题模板文件模板是一种用来生成用户所请求页面的PHP源文件。
WordPress允许用户为网站不同部分定义不同的模板;但即使网站不完全拥有这些不同的模板也可以正常运行。系统根据模板层级与特定主题中的可用模板来选取并生成模板。主题开发人员可以规定使用模板所执行的总定制数量。例如在某种极端的情况下,可能只能用index.php这一个模板文件作为网站生成的所有页面的模板。普通情况下,用户使用不同的模板文件生成不同页面,这样可以达到最佳自定义效果。
基本模板一个WordPress主题至少包括两个文件:
这些文件都位于主题文件中。index.php模板文件灵活易用,可以存储关于页眉、侧边栏、页脚、内容、类别、查找、错误以及访问者请求的页面的所有引用信息。index.php还可以划分成模块化的模板文件,每个模块分担部分系统任务。用户不指定模板文件时,WordPress会使用内置的默认文件。例如,如果用户没有comments.php 或comments-popup.php模板文件,WordPress会自动通过模板层级选择wp-comments.php 以及 wp-comments-popup.php模板文件进行操作。这些默认模板未必能够完全配合用户的主题,因此用户的最佳选择是指定一个自己的模板文件。可以用来划分(划分内容存储在主题文件中)的常用文件包括:
通过这些模板文件模块,用户可以在Index.php主文件中添加各种模板标签,从而调用这种模块化的单元组件,让各个组件显示在最终生成的页面上。
下面是这种调用的示例:
<?php get_sidebar();?> <?php get_footer();?>在模板中有更多关于不同模板的运行方式以及信息生成方式的相关信息。
基于查询的模板WordPress可以为不同的查询类型加载不同模板。有两种方法可以实现这一效果:一种是使用内置模板层级,另一种是在模板文件的主循环中使用条件标签。
用户使用模板层级时需要给出专用模板文件。这些专用模板文件会自动改写Index.php文件。例如,如果用户的主题中有一个名为category.php的模板以及一个需要查询的类别,系统会加载category.php文件而不是index.php文件。category.php文件不存在时按常规使用index.php文件。
使用category-6.php等类似名称的文件能够在模板层级中获得更为详细的信息。如果要生成一个类别编号为6的页面,系统调用category-6.php文件,而不再使用category.php文件。(在WordPress 2.3与更低版本中,网站管理员可以在管理面板的链接菜单中查找各类别ID,自 2.5版本起,WordPress从控制板中删除了ID一栏,用户可以点击“Edit Category(编辑类别)”,根据URL地址栏中cat_ID的值来判断类别ID。URL地址栏的显示内容可能类似于...categories.php?action=edit&cat_ID=3 ,其中的“3”就是类别ID。)关于类别模板的更多信息参见设置分类页面。
如果用户主题对使用模板文件的控制需求超过了对模板层级内容的控制需求,用户可以使用条件标签。条件标签检查WordPress主循环并判断某个指定条件是否为真,然后用户可以根据该条件加载相应模板,或在网页上显示相应信息。
例如要在某篇日志中(日志隶属于某个指定类别)生成一个独特的样式表单,代码可能是这样的:
<?php if (is_category(9)) { // looking for category 9 posts include(TEMPLATEPATH . /single2.php); } else { // put this on every other category post include(TEMPLATEPATH . /single1.php); } ?>
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-7277-2.html
挺好