2017-04-11 147 views
0

我努力让我的自定义后类型使用个性化的档案模板,希望有人能看到我要去哪里错了,帮我重回正轨吗?WordPress的自定义文章类型与类别档案页

这里是我用于创建自定义文章类型代码:

add_action('init', 'news_post_type'); 
function news_post_type() { 
    register_post_type('news', 
    array(
     'labels' => array(
     'name' => __('News'), 
     'singular_name' => __('News') 
    ), 
     'capability_type' => 'post', 
     'has_archive' => true, 
     'hierarchical' => true, 
     'public' => true, 
     'supports' => array('title','editor','excerpt','trackbacks','custom-fields','revisions','thumbnail','author','page-attributes',) 
    ) 
); 
} 
register_taxonomy('news_category', 'news',array('label' => __('Categories'),'rewrite' => array('slug' => 'news/category'),'hierarchical' => true,)); 

这是伟大的URL回报:www.mysite.com/news/category/%the_category%就像我想。

问题是我希望此CPT中的每个类别都使用我的自定义模板,但是当我创建一个名为archive-news.php的文件时,它将被忽略。但是,如果我创建一个名为archive.php的文件,那么它可以工作,但显然这适用于我不想要的所有其他文章归档。

我不是正确命名模板文件?我是如何创建CPT的错误?

如果有人可以帮助将不胜感激。

非常感谢

+0

https://codex.wordpress.org/Category_Templates '类别的slug.php, 品类ID.php, category.php, archive.php, index.php' –

+0

重命名文件类别-news.php没有工作范畴的任何:( – Ordog

+0

尝试ID,或在你的archive.php做这样的事' https://developer.wordpress.org/reference/functions/get_template_part/ –

回答

0

使用在这种情况下工作分类模板,所以命名我的文件taxonomy-news_category.php让我创建自己的模板,在我的自定义后类型的所有类别。

我还发现,在一个页面命名一样的自定义后类型是造成问题了。因此总之,重命名页面或使用上面的分类模板。

0

我有你的代码 检查其在我身边工作正常。 我想你在详细页面上检查单个$ posttype.php文件。

+0

我不看单页,绝对是一类:) – Ordog

相关问题