注册新的帖子类型时,有一个参数将启用帖子类型存档has_archive
(检查Codex). 启用post类型存档时,这些URL:
www.mysite.com/windows/
www.mysite.com/doors/
www.mysite.com/garages/
will使用
archive-$post_type.php
作为模板文件。如果文件
archive-$post_type.php
不存在,它会寻找
archive.php
. (检查
Codex)
因此,我认为一个简单的解决方案是检查$post_type
在里面archive.php
文件和windows, doors, garages
然后我们包括special.php
, 像这样:
<?php
// archive.php
$post_type = get_query_var(\'post_type\');
if (in_array($post_type, array(\'windows\', \'doors\', \'garages\'))) {
include \'special.php\';
exit;
}
// default content for other archive type
?>
Note: 别忘了设置
has_archive
到
true
注册帖子类型时。