为什么GET_PAGE_TEMPLATE()不显示分类模板文件名?

时间:2013-05-28 作者:Aajahid

我制定了一个自定义分类法,名为-work-category 和一个名为-taxonomy-work-category.php. 那部分很好用。

为了一个目的get_page_template() 因为taxonomy-work-category.php 文件以获取当前模板文件名。但打印出来的是page.php (当然是完整路径)。我希望它能打印出来taxonomy-work-category.php.

即使我确定它是从自定义分类法模板文件打印出来的,为什么不get_page_template() 函数不返回分类法模板文件名?

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

get_page_template 返回当前活动帖子/页面的模板。不过,您不在帖子/页面上,而是在列表/归档中。

当你得到page.php 您看到的是第一篇文章/页面的模板。分类法列表本身不是一个页面,它是一个列表,因此它没有页面模板的意义,因为它不是一个页面。

请参见此处,以获取您想要的答案:

Get name of the current template file

这可能也适用于:

/* show me what the body class will look like */
echo body_class() . "\\n";

/* make sure i\'ve got $template */
global $template;

/* print the active template path and filename */
print_r($template);
(尽管为什么要检查模板X中是否有模板X,答案肯定总是肯定的?)

结束

相关推荐

Custom taxonomy in short code

我在网格显示的主题中使用短代码。代码仅考虑类别ID。我还想添加自定义分类法,以便将输出作为分类帖子和自定义分类帖子。 function five_col( $atts ) { extract( shortcode_atts( array( \'cats\' => \'1\', \'num\' => \'2\', \'offset\' => \'0\', ), $atts ) );