我在获取查询功能时遇到问题。我需要运行循环,不包括特定类别。
我正在尝试使用category__not_in,但根本不起作用。
<?php
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'category__not_in' => array( '44' ),
'posts_per_page' => 9,
'paged' => get_query_var('paged')
);
$query = new WP_Query( $args );
query_posts($query);
?>
Run Code Online (Sandbox Code Playgroud)
我已经试过了:
'category__not_in' => array( '44' ),
'category__not_in' => array( 44 ),
'category__not_in' => '44',
'category__not_in' => 44,
Run Code Online (Sandbox Code Playgroud)
但没有任何效果=(
Pra*_*Rao 10
尝试使用tax_query代替:
<?php
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => 9,
'paged' => get_query_var('paged'),
'tax_query' => array(
array(
'taxonomy' => '<YOUR TAXONOMY NAME>',
'field' => 'term_id',
'terms' => array( 44 ),
'operator' => 'NOT IN',
),
),
);
$query = new WP_Query( $args );
query_posts($query);
?>
Run Code Online (Sandbox Code Playgroud)
'cat' => '-44'在您的$args阵列中使用:
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'cat' => '-44',
'posts_per_page' => 9,
'paged' => get_query_var('paged')
);
Run Code Online (Sandbox Code Playgroud)
这是WP Codex 中推荐的方式。
谢谢大家,感谢@rnevius
问题出在我的查询中,我使用的是WP_Query()and query_posts()。
我使用了如何引用 WP Codex:https : //codex.wordpress.org/Class_Reference/WP_Query
下面是我的代码最后的样子:
<?php
$args = array(
'post_type' => 'post',
'post_status' => 'publish',
'category__not_in' => array( 44 ),
'posts_per_page' => 9,
'paged' => get_query_var('paged')
);
$query = new WP_Query( $args );
?>
<?php
if ( $query->have_posts() ) {
while ( $query->have_posts() ) {
$query->the_post();
?>
// code
<?php
}
} else {
// no posts found
}
wp_reset_postdata();
?>
Run Code Online (Sandbox Code Playgroud)