我刚刚用几个CPT(苹果、香蕉、黄瓜)建立了一个网站。我的老板想把它们分成几个类别(红色、黄色、绿色),并链接到类别页面。当我们通过URL中的类别访问页面时,页面显示不正确。
明确地mysite.com/category/red
正在显示正确的类别,但我WP_Query
在侧边栏中引入另一个帖子类型,现在显示的是默认帖子,而不是CPT。
除了/category
. 如果我使用archive.php
或category.php
作为模板。知道为什么吗?
我应该提到的是,我在我的functions.php
首先让CPT在/类别上显示。
function query_post_type($query) {
if ( ! is_admin() ) {
if( is_category() || is_tag() && $query->is_main_query() && empty( $query->query_vars[\'suppress_filters\'] ) ) {
$post_type = get_query_var(\'post_type\');
if($post_type)
$post_type = $post_type;
else
$post_type = array( \'post\',\'apple\',\'banana\',\'cucumber\',\'nav_menu_item\');
$query->set(\'post_type\', $post_type);
}
}
}
add_action(\'pre_get_posts\', \'query_post_type\');