im只是想知道我如何在另一个循环中读到的博客文章的帖子ID(即,侧栏中的最新帖子循环)
在我的单个POST PHP文件中,我有此代码创建一个变量
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', 'single' ); ?>
<?php $current_post_id = get_the_ID(); ?>
<?php endwhile; // end of the loop. ?>
然后在我的默认网络php文件中,在最近的帖子的循环中,我有一个...
<?php while ($r->have_posts()) : $r->the_post(); ?>
<?php $recent_post_id = get_the_ID(); ?>
<li> <?php echo $recent_post_id; if ( $recent_post_id == $current_post_id ) { echo 'pass '; } else { echo 'fail ';} ?></li>
<?php endwhile; ?>
每次给予失败,因此显然我所做的没有意义(我仍在学习)。我只是想知道是否有一种方法可以从第一个循环中获取发布ID,并在第二个循环中使用它。当我在第二个循环中回声current_post_id
的那一刻,什么都没有。(关于突出显示当前帖子,一旦我有效,这将很容易。
感谢您的帮助。
在线上有很多有关如何在循环外获取ID的示例。
在窗口小部件代码中尝试一下:
<?php
global $post;
$current_post_id = $post->ID;
while ($r->have_posts()) : $r->the_post(); ?>
<li> <?php echo $recent_post_id; if ( $recent_post_id == $current_post_id ) { echo 'pass '; } else { echo 'fail ';} ?><a href="<?php the_permalink() ?>" title="<?php echo esc_attr(get_the_title() ? get_the_title() : get_the_ID()); ?>"><?php if ( get_the_title() ) the_title(); else the_ID(); ?></a></li>
<?php endwhile; ?>
让我们知道它是否有效。