如何阻止排除的类别显示其粘贴帖子?

时间:2013-09-29 13:11:07

标签: php wordpress

我有一个带有排除类别(精选)的循环,所以现在我的类别在循环中不可见
现在这是我的问题,如果我在特色类别中设置我的帖子为“粘性”,那么帖子将仍然显示在我的循环中
我想要完成的是 隐藏类别粘贴帖子(精选) ,但允许我的其他帖子(来自其他类别)“粘” 。
我的循环:

<?php 
    $category = get_cat_ID('Featured');//Get our Featured Category     
    $args = array(           
    'category__not_in' => $category //Category is excluded 
                                   // but 'sticky' ones from Featured category
                                  // are still showing up...         
);

$temp = $wp_query;
$wp_query = null;
$wp_query = new WP_Query($args);

if($wp_query->have_posts()):?><?php while ( $wp_query->have_posts() ) : $wp_query->the_post();?>

    <div <?php post_class(); ?> id="post-<?php the_ID(); ?>">

        <div class="entry"> 

            <?php the_content(__('Read more','my-domain')); ?>  

        </div><!--/entry-->
    </div><!--/post_class-->        
    <?php endwhile; ?>  
    <?php endif; ?><!--END if THE LOOP-->
<?php
$wp_query = null;
$wp_query = $temp;
wp_reset_query();
?>

有什么想法我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

我没有可用的测试系统,但根据the Codex,这样的事情应该有效:

$sticky = get_option( 'sticky_posts' );
$args = array(
    'category__not_in' => $category,
    'ignore_sticky_posts' => 1,
    'post__not_in' => $sticky
);
$query = new WP_Query( $args );