推广 热搜: page  关键词  红书  链接  搜索  获取  哪些  数据  数据分析  服务 

1-6 wordpress 模板层次结构

   日期:2024-12-26     作者:e8ew9    caijiyuan   评论:0    移动:https://sicmodule.kub2b.com/mobile/news/10347.html
核心提示:如前所述,模板文件是模块化的、可重复使用的文件,用于在您的 WordPress 网站上生成网页。 某些模板文件(例如页眉和页脚模板)

如前所述,模板文件是模块化的、可重复使用的文件,用于在您的 WordPress 网站上生成网页。 某些模板文件(例如页眉和页脚模板)用于您网站的所有页面,而其他模板文件仅在特定条件下使用。

本文解释了 WordPress 如何确定在各个页面上使用哪些模板文件。 如果您想自定义现有的 WordPress 主题,它将帮助您决定需要编辑哪个模板文件。

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

WordPress 使用查询字符串来决定应该使用哪个模板或模板集来显示页面。 查询字符串是包含在指向您网站每个部分的链接中的信息。

简而言之,WordPress 向下搜索模板层次结构,直到找到匹配的模板文件。 要确定要使用的模板文件,WordPress:

  1. 将每个查询字符串与查询类型匹配,以决定正在请求哪个页面(例如,搜索页面、类别页面等);
  2. 按照模板层次结构确定的顺序选择模板;
  3. 在当前主题的目录中查找具有特定名称的模板文件,并使用层次结构指定的第一个匹配的模板文件。

除了基本的 index.php 模板文件外,您可以选择是否要实现特定的模板文件。

在这些示例中,使用了 PHP 文件扩展名。 在块主题中,改为使用 HTML 文件,但模板层次结构是相同的。

如果 WordPress 找不到具有匹配名称的模板文件,它将跳到层次结构中的下一个文件。 如果 WordPress 找不到任何匹配的模板文件,将使用主题的 index.php 文件。

当您使用子主题时,您添加到子主题的任何文件都将覆盖父主题中的相同文件。 例如,两个主题包含相同的模板 category.php,则使用子主题的模板。

如果子主题包含特定模板,例如 category-unicorns.php,而父主题包含优先级较低的模板,例如 category.php,则使用子主题的 category-unicorns.php。

相反,如果子主题仅包含通用模板,例如 category.php,而父主题包含特定模板,例如 category-unicorns.php,则使用父主题的模板 category-unicorns.php。

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

  1. 在当前主题的目录中查找与类别的 slug 匹配的模板文件。 如果类别 slug 是“独角兽”,那么 WordPress 会查找名为 category-unicorns.php 的模板文件。
  2. 如果 category-unicorns.php 缺失且类别 ID 为 4,WordPress 会查找名为 category-4.php 的模板文件。
  3. 如果 category-4.php 缺失,WordPress 将查找通用类别模板文件 category.php。
  4. 如果 category.php 不存在,WordPress 将查找通用归档模板 archive.php。
  5. 如果archive.php 也丢失,WordPress 将回退到主题模板文件index.php。

下图显示了调用哪些模板文件来生成基于 WordPress 模板层次结构的 WordPress 页面。

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

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

  1. home.php
  2. index.php

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

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

如您所见,WordPress 采用的路径有很多规则。 使用上面的图表是确定 WordPress 将显示什么的最佳方法。

privacy-policy.php 模板文件用于呈现您网站的隐私政策页面。 隐私政策页面模板优先于静态页面 (page.php) 模板。 如果 privacy-policy.php 文件不存在,WordPress 将根据可用模板使用 page.php 或 single.php 文件。 如果这些文件都不存在,它将使用 index.php 文件。

  1. privacy-policy.php – 用于设置→隐私的更改您的隐私政策页面部分中设置的隐私政策页面。
  2. 自定义模板文件 – 分配给页面的页面模板。请参阅 get_page_templates()。
  3. page-{slug}.php - 如果页面 slug 是隐私,WordPress 将使用 page-privacy.php。
  4. page-{id}.php – 如果页面 ID 为 6,WordPress 将使用 page-6.php。
  5. page.php
  6. singular.php
  7. index.php

单个帖子模板文件用于呈现单个帖子。 WordPress 使用以下路径:

  1. single-{post-type}-{slug}.php –(自 4.4 起)首先,WordPress 为特定帖子寻找模板。 例如,如果帖子类型是产品并且帖子 slug 是 dmc-12,则 WordPress 将查找 single-product-dmc-12.php。
  2. single-{post-type}.php – 如果文章类型是产品,WordPress 会查找 single-product.php。
  3. single.php – WordPress 然后回退到 single.php。
  4. singular.php– WordPress 然后回退到 singular.php。
  5. index.php – 最后,如上所述,WordPress 最终会退回到 index.php。

用于呈现静态页面(页面后期类型)的模板文件。 请注意,与其他帖子类型不同,页面对 WordPress 来说是特殊的,并且使用以下路径:

  1. 自定义模板文件 – 分配给页面的页面模板。 请参阅 get_page_templates()。
  2. page-{slug}.php – 如果页面 slug 是最近新闻,WordPress 将使用 page-recent-news.php。
  3. page-{id}.php – 如果页面 ID 为 6,WordPress 将使用 page-6.php。
  4. page.php
  5. singular.php
  6. index.php

渲染分类归档索引页面在 WordPress 中使用以下路径:

  1. category-{slug}.php - 如果类别的 slug 是新闻,WordPress 将查找 category-news.php。
  2. category-{id}.php - 如果类别的 ID 为 6,WordPress 将查找 category-6.php。
  3. category.php
  4. archive.php
  5. index.php

为了显示标签存档索引页面,WordPress 使用以下路径:

  1. tag-{slug}.php – 如果标签的 slug 是 sometag,WordPress 将查找 tag-sometag.php。
  2. tag-{id}.php - 如果标签的 ID 为 6,WordPress 将查找 tag-6.php。
  3. tag.php
  4. archive.php
  5. index.php

自定义分类法使用稍微不同的模板文件路径:

  1. taxonomy-{taxonomy}-{term}.php – 如果分类法是 sometax,并且分类法的术语是 someterm,WordPress 将查找 taxonomy-sometax-someterm.php。 对于帖子格式,分类是“post_format”,术语是“post-format-{format}”。 即 taxonomy-post_format-post-format-link.php 用于链接发布格式。
  2. taxonomy-{taxonomy}.php – 如果分类是 sometax,WordPress 会寻找 taxonomy-sometax.php。
  3. taxonomy-php
  4. archive.php
  5. index.php

自定义帖子类型使用以下路径呈现适当的存档索引页面。

  1. archive-{post_type}.php – 如果帖子类型是产品,WordPress 将查找 archive-product.php。
  2. product.php
  3. archive.php
  4. index.php

(关于渲染单个帖子类型模板,请参阅上面的单个帖子显示部分。)

基于上述示例,呈现作者存档索引页面是相当解释性的:

  1. author-{nicename}.php - 如果作者的好名字是 matt,WordPress 将查找 author-matt.php。
  2. author-{id}.php - 如果作者的 ID 为 6,WordPress 将查找 author-6.php。
  3. author.php
  4. archive.php
  5. index.php

基于日期的存档索引页面会按照您的预期呈现:

  1. date.php
  2. archive.php
  3. index.php

搜索结果遵循与其他模板类型相同的模式:

  1. search.php
  2. index.php

同样,按以下顺序调用 404 个模板文件:

  1. 404.php
  2. index.php

呈现附件页面(附件后类型)使用以下路径:

  1. {MIME-type}.php – 可以是任何 MIME 类型(例如:image.php、video.php、pdf.php)。 对于 text/plain,使用以下路径(按顺序):
    1. text-plain.php
    2. plain.php
    3. text.php
  2. attachment.php
  3. single-attachment-{slug}.php – 例如,如果附件 slug 是假日,WordPress 会查找 single-attachment-holiday.php。
  4. single-attachment.php
  5. single.php
  6. singular.php
  7. index.php

嵌入模板文件用于呈现正在嵌入的帖子。 从 4.5 开始,WordPress 使用以下路径:

  1. embed-{post-type}-{post_format}.php – 首先,WordPress 为特定帖子寻找模板。 例如,如果它的帖子类型是 post 并且它具有音频格式,则 WordPress 将查找 embed-post-audio.php。
  2. embed-{post-type}.php – 如果文章类型是产品,WordPress 会查找 embed-product.php。
  3. embed.php – WordPress 然后回退到 embed.php。
  4. 最后,WordPress 最终会退回到它自己的 wp-includes/theme-compat/embed.php 模板。

从 WordPress 4.7 开始,模板名称中包含非 ASCII 字符的任何动态部分实际上都按顺序支持未编码和编码形式。 您可以选择使用哪个。

这是一个名为“Hello World

本文地址:https://sicmodule.kub2b.com/news/10347.html     企库往 https://sicmodule.kub2b.com/ , 查看更多

特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

 
 
更多>同类最新资讯
0相关评论

文章列表
相关文章
最新动态
推荐图文
最新资讯
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号