例如,假设您有如下目录:
theme
- subfolder
- template.php
content-job-listing.php
如果我试着这样调用get\\u template\\u part
get_template_part(\'content\', \'job-listing\')
从文件模板。php(请注意,这只是一个通用名称,而不是我使用的实际名称)返回NULL。
同样,如果我使用get_template_part(\'../content\', \'job-listing\')
这也无法返回模板。但是,如果两者位于同一目录中,则第一个可以正常工作。
如果在t的子文件夹中调用get\\u template\\u part(),则它不起作用
最合适的回答,由SO网友:TheDeadMedic 整理而成
get_template_part()
无论你在主题中的位置或深度如何,都会起到同样的作用。它始终包含相对于主题(或子主题)的根。
因此,如果您从任何地方调用以下命令:
get_template_part( \'content\', \'job-listing\' );
。。。它将尝试加载(按顺序):
child-theme/content-job-listing.php
parent-theme/content-job-listing.php
child-theme/content.php
parent-theme/content.php
要加载主题子目录中的部分,只需使用第一个参数中的路径:
get_template_part( \'path/to/file\', \'optional-slug\' );