WordPress 模板层级(一)

如所讨论的,模板文件是模块化的,可重复使用的文件,用于在WordPress站点上生成网页。 一些模板文件(如
页眉和页脚模板)用于所有网站的页面,而其他模板文件仅在特定条件下使用。
本文解释WordPress如何确定在单个页面上使用哪个模板文件。 如果要自定义现有的WordPress主题,它将帮助
您确定需要编辑的模板文件。

提示:您还可以使用条件标签来控制在特定页面上加载哪些模板。

模板文件层次结构

概述
WordPress使用查询字符串来决定哪个模板或一组模板应用于显示页面。查询字符串是指向您网站每个部分的链
接中的信息。它来自初始问号,可能包含多个由&符号分隔的参数。
简单地说,WordPress通过模板层次结构搜索,直到找到匹配的模板文件。要确定使用哪个模板文件,
WordPress:
将每个查询字符串匹配到查询类型以确定正在请求哪个页面(例如,搜索页面,类别页面等);
按照模板层次结构确定的顺序选择模板;
在当前主题的目录中查找具有特定名称的模板文件,并使用层次结构指定的第一个匹配的模板文件。
除了基本的index.php模板文件外,您可以选择是否要实现特定的模板文件。
如果WordPress找不到具有匹配名称的模板文件,它将跳到层次结构中的下一个文件。如果WordPress找不到任
何匹配的模板文件,将使用主题的index.php文件。

示例
如果您的博客位于http://example.com/blog/ ,访问者点击链接到类别页面(例如
http://example.com/blog/category/your-cat/) ,WordPress会查找模板 在当前主题的目录中匹配类别的ID
以生成正确的页面。 更具体地说,WordPress遵循以下过程:

  • 在当前主题的目录中查找与该类别的插件匹配的模板文件。 如果类别slug是“unicorns”,则WordPress会
  • 查找名为category-unicorns.php的模板文件。
  • 如果category-unicorns.php缺少且类别的ID为4,则WordPress将查找名为category-4.php的模板文件。
  • 如果缺少类别4.php,WordPress
  • 将寻找一个通用类别模板文件category.php。
  • 如果category.php不存在,WordPress将寻找一个通用归档模板archive.php。
  • 如果archive.php也丢失,WordPress将回到主题模板文件index.php。

模板层次详细

虽然模板层次结构更容易被理解为图表,但以下部分描述了WordPress为多种查询类型调用模板文件的顺序。 

主页显示

默认情况下,WordPress设置您的网站的主页以显示最新的博文。 这个页面被称为博客帖子索引。 您也可以将
您的博客帖子设置为在单独的静态页面上显示。 模板文件home.php用于呈现博客帖子索引,无论是用作首页还
是单独的静态页面。 如果home.php不存在,WordPress将使用index.php。

  • home.php
  • index.php

注意:如果front-page.php存在,它将覆盖home.php模板。

首页

front-page.php模板文件用于呈现您网站的首页,首页是否显示博客帖子索引(如上所述)或静态页面。 首页模板优先于博客帖子索引(home.php)模板。 如果front-page.php文件不存在,WordPress将根据设置→阅读中
的设置使用home.php或page.php文件。 如果这两个文件都不存在,它将使用index.php文件。 

  • front-page.php – 用于首页显示设置→阅读部分中的“您的最新帖子”或“静态页面”。
  • home.php – 如果WordPress找不到front-page.php和“你的最新帖子”设置在首页显示部分,它将寻找
  • home.php。 此外,当在首页显示部分中设置帖子页面时,WordPress将查找此文件。
  • page.php – 在首页显示部分设置“首页”时。
  • index.php – 在首页显示部分设置“您的最新帖子”,但home.php不存在或者当首页设置但page.php不存
    在时。

正如你所看到的,WordPress所采用的路径有很多规则。 使用上面的图表是确定WordPress将显示的最佳方式。

单页内容

单页内容模板文件用于呈现单页内容。 WordPress使用以下路径:

  • single-{post-type} – {slug} .php – (从4.4开始)首先,WordPress寻找特定内容的模板。 例如,如果内容
    类型是产品,并且post slug是dmc-12,则WordPress会查找单个产品dmc-12.php。
  • single- {post-type} .php – 如果帖子类型是产品,WordPress将寻找单一product.php。
  • single.php – WordPress然后回到single.php。
  • singular.php – 然后它回到singular.php。
  • index.php – 最后,如上所述,WordPress最终会回到index.php。

单页

用于呈现静态页面的模板文件(页面后置类型)。 请注意,与其他后期类型不同,页面特别适用于WordPress,
并使用以下修补程序:
自定义模板文件 – 分配给页面的页面模板。 请参阅get_page_templates()。

  • page- {slug} .php – 如果该页面是最新消息,WordPress将会使用page-recent-news.php。
  • page- {id} .php – 如果页面ID为6,WordPress将使用page-6.php。
  • page.php
  • singular.php
  • index.php 
WordPress 专栏Wordpress主题开发专栏汇总主题基础

规划 WordPresss 主题文件

2022-10-3 17:07:49

专栏汇总前端技术专栏

前端 CSS 框架系列

2022-10-11 23:11:08

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
搜索