无论什么准备独立开发WordPress主题,还是二次开发WordPress主题,对于这款CMS固有的文件逻辑结构命名必须要搞清楚。这样符合WordPress本身的固有的开发逻辑才能完成。
对于WordPress主题的开发,我们必须要知道常规的目录文件的设定。
我们常见的主题目录中会包括这几个页面:
style.css (主题信息和样式)
functions.php (主题功能定义文件)
index.php (主页模板)
header.php (页头模板)
footer.php (页脚模板)
sidebar.php (侧边栏模板)
category.php(分类归档模板)
single.php (文章页模板)
page.php (页面模板)
archive.php (归档页模板)
search.php (搜索结果模板)
404.php (404错误页面)
tag.php(标签页列表)
其中主题说明文件会在 style.css 顶部添加:
/*
Theme Name: My Theme
Theme URI: https://example.com/my-theme
Author: Your Name
Author URI: https://example.com
Version: 1.0
Description: A custom WordPress theme for lifestyle calculators.
*/
如果要深入到各个主题文件页面的关系,以及优先逻辑,包括后续的独立扩展,我们需要看下面这些区分。
第一、主题根目录必备文件
文件名 | 作用 | 是否必需 |
---|---|---|
style.css |
定义主题元信息(名称、作者、版本等)和全局 CSS 样式 | 必需 |
index.php |
默认模板文件(兜底模板,当其他模板不存在时调用) | 必需 |
functions.php |
主题功能扩展文件(注册菜单、脚本、小工具等) | 必需 |
第二、核心模板文件(按优先级调用)
WordPress 模板层级(Template Hierarchy)决定了不同页面调用哪个文件,以下是常见模板文件:
1、首页相关
文件名 | 作用 |
---|---|
front-page.php |
自定义首页模板(优先级高于 home.php ) |
home.php |
博客文章列表页(若未设置静态首页) |
index.php |
默认兜底模板(所有页面最后兜底) |
2、文章页
文件名 | 作用 |
---|---|
single.php |
单篇文章模板 |
single-{post-type}.php |
特定文章类型模板(如 single-product.php ) |
content-single.php |
单篇文章内容片段(通常被 single.php 引用) |
3、页面(page)
文件名 | 作用 |
---|---|
page.php |
默认页面模板 |
page-{slug}.php |
特定页面模板(如 page-about.php 对应 slug 为 about 的页面) |
page-{id}.php |
特定 ID 页面模板(如 page-404.php ) |
template-{name}.php |
自定义模板(需在文件头部声明 /* Template Name: xxx */ ) |
4、分类/标签/归档
文件名 | 作用 |
---|---|
archive.php |
默认归档页模板 |
archive-{post-type}.php |
特定文章类型归档模板(如 archive-product.php ) |
category.php |
分类归档模板 |
category-{slug}.php |
特定分类模板(如 category-news.php ) |
tag.php |
标签归档模板 |
tag-{slug}.php |
特定标签模板(如 tag-wordpress.php ) |
5、404页面
文件名 | 作用 |
---|---|
404.php |
自定义 404 错误页面 |
6、搜索结果页
文件名 | 作用 |
---|---|
search.php |
搜索结果模板 |
searchform.php |
搜索表单片段(通常被 search.php 或 sidebar.php 引用) |
第三、功能扩展文件
文件名 | 作用 |
---|---|
functions.php |
主题核心功能文件(注册菜单、脚本、小工具、自定义字段等) |
inc/ 或 includes/ |
存放辅助函数、自定义类等(非必需,但推荐模块化管理) |
template-parts/ |
可复用的模板片段(如 header.php 、footer.php 的拆分模块) |
第四、样式目录图片
文件名 | 作用 |
---|---|
style.css |
全局 CSS 样式(必须包含主题元信息头部注释) |
assets/css/ |
模块化 CSS 文件(如 main.css 、responsive.css ) |
assets/js/ |
JavaScript 文件(如 main.js 、customizer.js ) |
screenshot.png |
主题预览图(尺寸:1200×900 像素,显示在后台主题列表) |
第五、模块化文件
文件名 | 作用 |
---|---|
header.php |
页面头部(包含 <head> 和导航栏) |
footer.php |
页面底部(包含版权信息、统计代码) |
sidebar.php |
侧边栏(小工具区域) |
comments.php |
评论模板 |
content.php |
文章内容片段(被 index.php 、archive.php 等引用) |
content-{post-type}.php |
特定文章类型内容片段(如 content-product.php ) |
第六、扩展文件
文件名 | 作用 |
---|---|
rtl.css |
支持从右到左语言(如阿拉伯语)的样式文件 |
customizer.php |
主题自定义面板功能(通过 WordPress 定制器实现) |
class-{name}.php |
自定义 PHP 类(如主题功能封装) |
language/ |
多语言文件(.po 和 .mo 格式,用于国际化) |
总结,文件的命令一定要规范,且尽量的用共用模块化便于维护。