我想在我的单个博客页面的底部显示3条最新帖子,但没有当前帖子。
我的代码:
<div class="blog__posts">
<h2><?php esc_html_e('andere blogberichten', 'dfib-theme'); ?></h2>
<a href="<?php echo get_permalink( get_option( 'page_for_posts' ) ); ?>" class="btn btn-overview"><?php esc_html_e('alle blogberichten', 'dfib-theme'); ?></a>
<div class="blog__posts--wrapper">
<?php
$the_query = new WP_Query( array(
'posts_per_page' => 2,
));
?>
<?php if ( $the_query->have_posts() ) : ?>
<?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
<div class="blog__single">
<a href="<?php the_permalink(); ?>"><div class="blog__single--img" style="background-image: url(<?php echo get_the_post_thumbnail_url();?>);"></div></a>
<h2><?php the_title(); ?></h2>
<?php the_excerpt(); ?>
<a href="<?php the_permalink(); ?>">lees meer</a>
</div>
<?php endwhile; ?>
<?php wp_reset_postdata(); ?>
<?php else : ?>
<p><?php __('No News'); ?></p>
<?php endif; ?>
</div>
</div>
它显示3个帖子,但是当我访问最新帖子时,同一帖子再次显示在底部。有没有办法每次都排除当前的?
答案 0 :(得分:0)
我刚刚在以下网站上找到了解决方案:https://pineco.de/snippets/exclude-current-post-from-wp_query/
我刚刚将此片段添加到了我的查询中:
'post__not_in' => array(get_the_ID())
答案 1 :(得分:0)
您必须使用post__not_in
排除当前帖子。
在WP_Query数组中添加post__not_in
,如下所示。
<?php
$the_query = new WP_Query( array(
'posts_per_page' => 2,
'post__not_in' => array( get_the_ID() )
));
?>