如何使用get_template_part调用WordPress两级子目录下的模板文件
用get_template_part访问两级子目录的WordPress模板文件
嘿,这个问题我太熟悉了!在WordPress里用get_template_part()调用两级子目录下的模板文件其实非常直观,根本不用绕弯子——直接把目录路径用斜杠连起来传给函数就行。
先看个实际的目录结构例子
假设你的主题文件夹是这么安排的:
my-custom-theme/ └── template-parts/ └── sections/ └── hero-banner.php
这里hero-banner.php就位于两级子目录:template-parts/sections/下面。
正确的调用方法
直接把完整的路径(不带.php后缀)作为第一个参数传给get_template_part()即可:
// 调用两级子目录下的hero-banner.php get_template_part('template-parts/sections/hero-banner');
如果你的模板有变体文件,比如hero-banner-home.php,还可以利用函数的第二个参数来精准调用:
// 调用变体模板hero-banner-home.php get_template_part('template-parts/sections/hero-banner', 'home');
实用小提示
要是担心路径写错导致文件找不到,可以先验证文件是否存在再调用,避免隐性问题:
$target_file = get_theme_file_path('template-parts/sections/hero-banner.php'); if (file_exists($target_file)) { get_template_part('template-parts/sections/hero-banner'); }
不过正常情况下,get_template_part()会自动跳过不存在的文件,不会抛出错误,这个验证算是锦上添花的操作。
另外要记得,WordPress的模板继承逻辑在这里同样生效:它会优先查找子主题中对应路径的文件,子主题没有的话,才会去父主题里找——完全不用额外配置。
内容的提问来源于stack exchange,提问作者Aurelian Spodarec
相关产品推荐
相关产品推荐

