类别是一种适用于帖子的分类法。页面不是帖子。页面是页面。
如果您需要内容来使用类别分类法,您有几个选项:
对该内容使用帖子,而不是页面注册静态页面的类别分类法,例如,将以下内容放入functions.php
(或在插件中):
这将为静态页面启用类别。
Grr。。。代码不想显示:
<?php
register_taxonomy_for_object_type( \'category\', \'page\' );
?>
编辑2修改主循环查询的正确方法是通过
pre_get_posts
, e、 g.如是:
function wpse29834_filter_pre_get_posts( $query ) {
if ( is_category() && $query->is_main_query() ) {
$query->set( \'post_type\', array( \'post\', \'page\' ) );
}
}
add_action( \'pre_get_posts\', \'wpse29834_filter_pre_get_posts\' );
使用
pre_get_posts
优于使用
query_posts()
, 虽然最初的解决方案在这种情况下有效。
(原始解决方案)
要使分类页面显示在类别存档索引的循环中,需要在中修改循环查询
category.php
, 您可以使用
query_posts()
作用e、 g.:
<?php
// Declare the global
global $wp_query;
// Define our custom args
// We\'re telling the query to use
// both Posts and Pages
$custom_args = array( \'post_type\' => array( \'post\', \'page\' ) );
// Merge the default query with our custom query
$query_args = array_merge( $wp_query->query, $custom_args );
// Finally, query posts based on our custom args
query_posts( $query_args );
?>
将此代码放在输出循环之前。