我正在开发一个关于wordpess的网站。
我有一个页面显示所有新闻标题(帖子标题)。 当点击一个标题时,我被引导到单个帖子页面。 我希望在每个帖子页面上显示我的单个帖子页面底部的5个最新帖子标题。 它使用此代码工作正常。
<?php $the_query = new WP_Query( 'showposts=5' ); ?>
<?php while ($the_query -> have_posts()) : $the_query -> the_post(); ?>
<?php the_time('y-m-d'); ?>
<?php the_title(); ?>
<?php the_content(); ?>
<?php endwhile;?>
我想要做的是排除我正在阅读的5个最新帖子的有效单个帖子,否则我的帖子会显示两次...
任何人都知道这是否可能以及我如何实现这一目标?
感谢您的帮助,
答案 0 :(得分:0)
$args = array('posts_per_page' => 5,
'post__not_in' => $post->ID
);
$the_query = new WP_Query( $args );
while ($the_query -> have_posts()) : $the_query -> the_post();
the_time('y-m-d');
the_title();
the_content();
endwhile; wp_reset_query(); ?>
将$ post-&gt; ID传递给post_not_in数组
id将获取当前的帖子ID
答案 1 :(得分:0)
你可以使用get_post
示例:
<?php
$post = get_post($id); //assuming $id has been initialized
setup_postdata($post);
// display the post here
the_title();
the_excerpt();
the_post_thumbnail();
wp_reset_postdata();
?>
答案 2 :(得分:0)
我找到了解决方案,这是代码:
<?php $args = $args = array(
'numberposts' => 5,
'offset' => 0,
'post__not_in' => array( $post->ID )
);
$myposts2 = get_posts($args);
$the_query = new WP_Query( $args );
while ($the_query -> have_posts()) : $the_query -> the_post();?>
<div class="news">
<?php the_post_thumbnail('full'); ?>
<?php the_time('y-m-d'); ?>
<?php the_title(); ?>
<?php the_content(); ?>
</div>
<?php endwhile; wp_reset_query(); ?>
谢谢大家的帮助