如果分类有6个以上的帖子,则显示全部

时间:2018-01-03 作者:user134208

我不知道为什么这个节目没有全部播出。当书籍下有6个以上的帖子时需要显示。

<?php 
for($k=0;$k<count($results);$k++){
$ID = $results[$k][\'book_id\'];
$args = array(\'p\' => $ID, \'post_type\' => \'attraction\');
$loop = new WP_Query($args);
$book_img = get_the_post_thumbnail( $ID, \'medium\', array( \'class\' => \'alignleft\' ) );
if ($book_img) {
    //NOTHING TO SHOW 
}
}
?>
<?php  
$args = array(
\'post_type\' => \'book\',  
\'showposts\'=> 6,
\'tax_query\' => array(
    array(
        \'taxonomy\' => \'destinations\',
        \'terms\'    => $current_term->term_id,
    )
)
);
$books = new WP_Query($args);
echo \'<ul class="discover-books country-details">\';
if ( $books->have_posts() ) {
while ( $books->have_posts() ) : $books->the_post(); 
    $book_img = get_the_post_thumbnail( get_the_ID(), \'medium\', array( \'class\' => \'alignleft\' ) );
    echo \'<li class="discover-single-box"><span class="discover-cell imageFit dimensions_img"><a href="\'.get_permalink().\'">\'.$book_img.\'</a><span class="bottom-content"><a href="\'.get_permalink().\'">\'.get_the_title().\'</a></span> </span></li>\';
endwhile;
}
echo \'</ul>\';
if(count($results) > 6) {
echo \'<div class="show-more"><a href="\'.get_site_url().\'/book?id=\'.base64_encode($current_term->term_id).\'">SHOW ALL</a></div>\';
}
?>

2 个回复
SO网友:rudtek

要么上面缺少一些代码,要么您只发布了部分。

看起来你没有在循环中计数。尝试使用:

$count = $books->post_count;
在循环中,然后在底部使用:

if($count > 6) {
但这一切都需要在您的循环中(在结束之前)我也看不到任何地方可以在这里重置postdata,因此它仍然可以工作,但如果这是完整的,我建议更改一下代码。

SO网友:user134208

我使用found\\u posts而不是post\\u count。

现在可以了。

 $count = $books->found_posts;
if($count > 6) {
echo \'<div class="show-more"><a href="\'.get_site_url().\'/book?id=\'.base64_encode($current_term->term_id).\'">SHOW ALL</a></div>\';
}

结束

相关推荐

Posts list in custom taxonomy

我有这样的事情:$terms = get_the_terms( get_the_ID(), \'kosmetyki_dystrybutor\'); $terms_ids = []; foreach ( $terms as $term ) { $terms_ids[] = $term->term_id; } $args = array( \'post_type\' => \'kosmetyki\',