创建一个单独的自定义帖子类型分类法存档页面


Create a individual custom post type taxonomy Archive Page

我目前使用archive.php作为类别、标签、作者等的通用列表。我的主题有4个自定义帖子类型,我希望每个帖子类型都有单独的存档模板。

如何为每个自定义帖子类型添加单独的存档模板?

我有一个代码,但不工作是不是我遗漏了一些东西?

add_filter( 'template_include', 'wpsites_cpt_archive_page_template', 99 );
 function wpsites_cpt_archive_page_template( $template ) {
if ( is_post_type_archive(array( first-post-type ) ) ) {
    $new_template = locate_template( array( 'your-cpt-template.php' ) );
    if ( '' != $new_template ) {
        return $new_template ;
    }
}
return $template;
}

checkout wordpress模板文件docs,

你不需要使用条件词来分离post-type模板,

您可以简单地创建archive-{your-post-type}.php文件,为每个帖子类型提供不同的归档模板。

用于分类学;

分类学-{taxonomy}-{term}.phptaxonom-{taxonomy}.phptag-{slug}.phptag-{id}.phpcategory-{slug}.phpcategory-{ID}.php

此外,如果您的主题支持Genesis Framework等标准循环挂钩,则可以根据Post类型使用条件来构建自定义循环。

假设您有自定义的帖子类型(CTP(。。cpt1、cpt2、cpt3。。。

然后,您只需要像那样分别创建归档模板文件archive-cpt1.php归档-cpt2.phprchive-cct3.php.