WordPress自定义帖子类型类别页面

时间:2013-10-03 19:04:43

标签: php wordpress

我有一个名为tutorials的自定义帖子类型。

我可以访问mysite.com/tutorials并获取所有教程的列表。

我还使用以下代码创建了一个名为tutorial_categories的自定义分类:

register_taxonomy(
        'tutorial_categories',
        'tutorials',
        array(
            'labels' => array(
                'name' => 'Tutorial Categories',
                'add_new_item' => 'Add New Tutorial Category',
                'new_item_name' => "New Tutorial Category"
            ),
            'show_ui' => true,
            'show_tagcloud' => false,
            'hierarchical' => true,
            'hasArchive' => true
        )
    );

我认为这是允许我这样做的插件的一部分。

如何为tutorial_category创建一个类别页面,所以如果有人去了:

mysite.com/tutorials/php /

他们将获得一份教程列表(自定义帖子类型),其中包含PHP的自定义分类。

任何帮助都会非常感激,因为我做了一些谷歌搜索,我似乎无法找到这个问题的答案。

谢谢!

莱昂。

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

首先,制作一个新的页面模板。

最简单的方法是复制当前的page.php文件并将其保存为:tutorials-page.php。

在顶部包括:

<?php 
/*
Template Name: Tutorials Page
*/
?>

然后使用以下自定义循环替换新tutorials-page.php文件中的循环:

<?php $args=array( 
'post_type' => 'tutorials', //set the post_type to use.
'taxonomy' => 'tutorial_categories', // set the taxonomy to use.
'term' => 'php', //set which term to use. 
'posts_per_page' => 10  // how many posts or comment out for all.       
);

$tutorialsloop = new WP_Query($args);
if($tutorialsloop->have_posts()) : while($tutorialsloop->have_posts()) :
$tutorialsloop->the_post();

get_template_part( 'content' ); //or whatever method your theme uses for displaying content. 

endwhile; endif; //end the custom post_type loop

?>

然后创建一个新页面并将此新页面模板分配给它。