Wordpress 如何使get_header()调用位于主题子文件夹中的自定义头文件?

Wordpress 如何使get_header()调用位于主题子文件夹中的自定义头文件?,wordpress,header,Wordpress,Header,从位于我的WP主题文件夹子文件夹(my_theme/subfolder/my_file.PHP)中的PHP模板文件中,我想使用get_header()并调用位于同一子文件夹中的自定义header new.PHP 相反,get_header(header new)加载位于我的主题根文件夹中的header.php。如何解决该问题?您可以使用: get_template_part('header-new.php'); 此处参考:> 使用get_header()函数是正确的。但是,根据,您应该以特定格

从位于我的WP主题文件夹子文件夹(
my_theme/subfolder/my_file.PHP
)中的PHP模板文件中,我想使用
get_header()
并调用位于同一子文件夹中的自定义
header new.PHP

相反,
get_header(header new)
加载位于我的主题根文件夹中的
header.php
。如何解决该问题?

您可以使用:

get_template_part('header-new.php');
此处参考:>


使用get_header()函数是正确的。但是,根据,您应该以特定格式传递自定义标头的名称-仅传递“header-”和“.php”之间的部分。例如,对于文件中的自定义标头:

header-custom.php
你应使用:

get_header('custom');
但这还不是全部。请务必记住,自定义头文件应放在1个或2个特定目录中,具体取决于您是处理父主题还是子主题:

  • 父主题:您应该将其放置在与页面模板相同的目录或“根”主题目录中(特别是与style.css所在的目录相同)
  • 子主题:必须将其放置在“根”子主题目录中

  • get_header()函数调用,该函数在这两个目录中搜索自定义头文件。如果找不到该文件,则默认为“header.php”。

    实际上,在这种情况下,它不是get_template_part(“new”);根据Wordpress*,“对于$name参数,如果文件名为“{slug}-special.php”,则指定“special”。-感谢您的回答,这是唯一对我有效的技巧。但我相信,如果我们更新主题,我们移到根文件夹的文件将被删除,那么如何处理呢?@AbhishekAggarwal-你使用子主题吗?如果是这样的话,那么对父主题的更新不会影响您,因为您将头放在子主题的根中。