页面-{slug}.php与模板-{slug}.php

时间:2019-10-16 作者:Mark

我正在开发一个遗留的WordPress应用程序,我遇到了一些命名为template-{slug}.php, 放置在子主题文件夹中。我很惊讶,当我调查这件事时,我发现谷歌没有提供任何支持。我看到很多人支持page-{slug}.php 文件,但这似乎是一个更简单的概念,我很容易理解。

我很清楚template-{slug}.php 文件控制设置为使用相应模板的页面布局,我可以在编辑页面区域中选择相应模板。但在我正在开发的其他WordPress应用程序上,我在编辑页面时看不到任何页面模板的选择。

所以我的问题是,我是否应该假设这是一个基于主题的功能,其中一些主题为template-{slug}.php 命名?我用的是闪闪发光的主题。

或者所有WordPress应用程序都允许这样的文件吗?如果是,我在哪里可以找到有关如何使用的说明template-{slug}.php 文件?或者,现在有没有其他方法可以创建一个真正的“模板”,让多个页面可以使用它的布局?

1 个回复
最合适的回答,由SO网友:Jacob Peattie 整理而成

所以我的问题是,我是否应该假设这是一个基于主题的功能,其中一些主题为template-{slug}.php 命名?

对的

或者所有WordPress应用程序都允许这样的文件吗?如果是,我在哪里可以找到有关如何使用的说明template-{slug}.php 文件?或者,现在有没有其他方法可以创建一个真正的“模板”,让多个页面可以使用它的布局?

我真的不明白你所说的“所有WordPress应用程序”是什么意思。在WordPress中,模板由主题提供。因此,如果您想要一个可用于页面的自定义模板,它需要成为主题的一部分。有关页面模板如何工作(包括自定义可选模板如何工作)的文档如下here.

如果您使用的是子主题,您只需创建所需的模板,可能是基于现有模板,并将其包含在子主题中。您会从文档中注意到,我在上面链接了一件事,那就是page-{slug}.php 具有允许自动使用模板的特定含义。template-{slug}.php 不具有任何此类含义。这只是一个惯例。使模板可选的是在文件开头出现模板名称注释:

<?php
/**
 * Template Name: Full Width Page
 */

相关推荐

Custom term templates

所以,我在网上做了一些研究,但没有找到可靠的答案,所以我来了。我需要为特定类别创建自定义woocommerce类别页面。例如,我有一个类别叫做“Awesome”。而不是使用由短代码生成的常规类别页面[product_category category=\"something\"], 我想为自定义特定类别页面Awesome.我发现我需要编辑taxonomy-product_cat.php 但我不知道如何将其链接到名为awesome.换句话说,我正在考虑制作php文件的自定义副本,然后将其添加为主题templ