模板文件在 WordPress 主题中广泛使用,但首先让我们了解相关术语。

模板术语

在使用 WordPress 主题时,“模板”一词有不同的含义:

  • 模板文件存在于主题内部,并表达您的网站显示方式。
  • 模板层级结构是 WordPress 用于根据请求的内容决定使用哪个主题模板文件的逻辑。
  • 页面模板是指应用于页面、文章和自定义帖子类型以改变其外观的模板。

在经典主题中, 模板标签是内置于 WordPress 的功能,您可以在模板文件中使用它们来获取和显示数据(例如 the_title() 和 the_content())。

在块主题中, 使用块而不是模板标签。

模板文件

WordPress 主题由模板文件组成。

  • 在经典主题中,这些是包含 HTML、模板标签和 PHP 代码的混合体的 PHP 文件。
  • 在块主题中,这些是包含代表块的 HTML 标记的 HTML 文件。

当您构建主题时,您将使用模板文件来影响您网站不同部分的布局和设计。例如,您可以使用 header 模板或模板部分来创建页眉。

当有人访问您的网站上的页面时,WordPress 会根据请求加载一个模板。由模板文件显示的内容类型取决于与模板文件关联的帖子类型。模板层级结构描述了 WordPress 将根据请求类型以及主题中是否存在该模板来加载哪个模板文件。然后服务器解析模板中的代码并返回 HTML 给访问者。

最重要的模板文件是 index.php,如果无法在模板层级结构中找到更具体的模板,它将作为通用模板使用。虽然主题只需要一个index 模板,但通常主题会包含许多模板来显示不同的内容类型和上下文。

模板部分

模板部分是另一个模板(如站点页眉)的一部分,作为该模板的一部分被包含。模板部分可以嵌入到多个模板中,简化了主题创建。常见的模板部分包括:

  • header.php 或 header.html 用于生成站点的页眉
  • footer.php 或 footer.html 用于生成功脚
  • sidebar.php 或 sidebar.html 用于生成侧边栏

虽然上述模板文件在 WordPress 中是特殊情况,仅适用于页面的一部分,但您可以创建任意数量的模板部分并将其包含在其他模板文件中。

在块主题中,模板部分必须放在名为 parts 的文件夹内。

常见的 WordPress 模板文件

以下是 WordPress 识别的一些基本主题模板和文件的列表。

index.php(经典主题)或 index.html(块主题)

主模板文件。它在所有主题中都是必需的。

style.css

主要样式表。它是所有主题中的必需项,并包含您主题的标题信息。

rtl.css

如果网站语言文本方向为从右向左,则会自动包含此从右向左的样式表。

front-page.php(经典主题)或 front-page.html(块主题)

首页模板始终用作站点主页,无论管理 > 设置 > 阅读中的设置如何。

home.php(经典主题)或 home.html(块主题)

主页面模板默认是首页。如果您未将 WordPress 设置为使用静态前台页面,则此模板用于显示最新文章。

singular.php(经典主题)或 singular.html(块主题)

单独特有模板在找不到 single.php时用于文章,或在找不到page.php 时使用于页面。如果未找到 singular.php,则使用 index.php。

single.php(经典主题)或 single.html(块主题)

单篇文章模板在访问者请求单个文章时用于显示。

single-{post-type}.php(经典主题)或 single-{post-type}.html(块主题)

当访问者请求来自自定义帖子类型的单篇帖子时使用此单独特有模板。例如,single-book.php 将用于显示名为 book的自定义帖子类型中的单个文章。

archive-{post-type}.php(经典主题)或 archive-{post-type}.html(块主题)

存档帖子类型模板在访问者请求自定义帖子类型的存档时使用。例如,archive-books.php 将用于显示名为 books的自定义帖子类型的文章存档。如果不存在 archive-{post-type} template,则使用此存档模板文件。

page.php(经典主题)或 page.html(块主题)

页面模板在访问者请求单独的页面时使用,这些是内置的模板。

page-{slug}.php(经典主题)或 page-{slug}.html(块主题)

页面别名模板在访问者请求特定页面时使用,例如具有“about”别名的页面(page-about.php)。

category.php(经典主题)或 category.html(块主题)

类别模板在访问者按类别请求文章时使用。

tag.php(经典主题)或 tag.html(块主题)

标签模板在访问者按标签请求文章时使用。

taxonomy.php(经典主题)或 taxonomy.html(块主题)

分类术语模板在访问者在自定义分类法中请求一个术语时使用。

author.php(经典主题)或 author.html(块主题)

作者页面模板在访问者加载作者页面时始终使用。

date.php(经典主题)或 date.html(块主题)

日期/时间模板在按日期或时间请求文章时使用。例如,生成的具有这些别名的页面:
http://example.com/blog/2014/
http://example.com/blog/2014/05/
http://example.com/blog/2014/05/26/

archive.php(经典主题)或 archive.html(块主题)

存档模板在访问者按类别、作者或日期请求文章时使用。注意:如果存在更具体的模板如 category.php、author.php 和 date.php,此模板将被覆盖。

search.php(经典主题)或 search.html(块主题)

搜索结果模板用于显示访问者的搜索结果。

attachment.php(经典主题)或 attachment.html(块主题)

附件模板在查看单个附件(如图像、pdf 或其他媒体文件)时使用。

image.php(经典主题)或 image.html(块主题)

图像附件模板是 attachment.php的更具体版本,用于查看单独的图像附件。如果不存在,WordPress 将使用attachment.php。

404.php(经典主题)或 404.html(块主题)

404模板在 WordPress 无法找到与访问者请求匹配的帖子、页面或其他内容时使用。

comments.php

经典主题中的评论模板。在块主题中,使用块而不是此文件。

使用模板文件

经典主题

在经典主题中,在 WordPress 模板内,您可以使用模板标签来动态显示信息、包含其他模板文件或其他方式自定义您的网站。

例如,在您的 index.php 中,您可以在最终生成的页面中包含其他文件:

以下是使用 WordPress 模板标签将特定模板包含到页面中的示例:

<?php get_sidebar(); ?>
<?php get_template_part( 'featured-content' ); ?>
<?php get_footer(); ?>

在模板标签上有一个完整的页面,您可以深入了解以了解所有相关内容。

参考 链接主题文件和目录部分以获取有关链接组件模板的更多信息。

块主题

在块主题中,您使用块而不是模板标签。块标记是 WordPress 用于显示块的 HTML 代码。模板部分是块,您可以像添加块一样将它们添加到您的模板文件中。

要包含页眉或页脚模板部分,请添加该模板部分的块标记。slug是该部分的名称。如果您想要包含的文件名为 header.html,则别名是“header”:

<!-- wp:template-part {"slug":"header"} /-->
(您的页面内容)
<!-- wp:template-part {"slug":"footer"} /-->

要包含搜索表单,请使用搜索块的块标记:

<!-- wp:search {"label":"Search","buttonText":"Search"} /-->