文件夹内的GET_TEMPLATE_PART

时间:2013-10-16 作者:Johann

因此,为了在我正在处理的自定义主题中搜索模板,我编写了以下代码:

<?php $my_theme = wp_get_theme();
get_template_part( \'masthead\',  $my_theme->Template); ?>
基本上,它所做的是搜索一个名为“maisthead themename.php”的文件。如果该文件不存在,则会查找名为“masthead.php”的文件。这正如预期的那样。

但是,我希望有一些东西可以在名为“templates”的文件夹中搜索文件,如果没有,则在主题的根文件夹中搜索模板名称。

我试过这个

<?php $my_theme = wp_get_theme();
get_template_part( \'templates/masthead\',  $my_theme->Template); ?>
但这仅在模板文件夹中存在文件时有效。如果该文件存在于根目录的主题文件夹中,则它无法识别该文件。

有什么想法吗?

谢谢

1 个回复
SO网友:Ivan Hanák

我想你在templates/masterhead-templatename.php, 这是可行的,没关系。

纠正我如果我错了,你想这样定位这个文件masterhead-templatename.php, 基本上是一个文件夹,但这个wordpress函数不是这样工作的。

如果该文件存在于根目录的主题文件夹中,则它无法识别该文件。

它不应该这样做。它搜索一个文件templates/masterhead.php, 自从templates/masterhead-templatename.php 找不到。

功能规范get_template_part( \'templates/masthead\', $my_theme->Template); 搜索方式如下:

STYLESHEETPATH/templates/masthead-themename.php
STYLESHEETPATH/templates/masthead.php
TEMPLATEPATH/templates/masthead-themename.php
TEMPLATEPATH/templates/masthead.php
找到了包含的文件,搜索显然停止了。

结束

相关推荐

在Functions.php中创建“无文件”页面模板

(所谓“页面模板”,我指的是具有\"Template Name\" header 可在管理页面的“模板”下拉字段中选择。)在多个实例中,我构建了页面模板,可以通过挂接到\\u内容或pre\\u get\\u帖子或类似的内容来完成。这让我想知道是否有一种方法可以在functions.php 或者不创建主题文件本身的插件。我想这样做的原因:在我想到的场景中,我通常只是复制页面。php几乎一字不差。这意味着将来对页面的任何更改。php需要制作两次。随着儿童主题的更新,这更加令人痛苦</我喜欢“模板”字段U