SO网友:Brooke.
如果您使用的是循环,那么您应该能够执行类似的操作,它未经测试,但应该可以工作。侧栏循环
<?php if ( have_posts() ) : while( have_posts() ): the_post(); ?>
<?php while( have_posts() ): the_post(); ?>
<?php while( have_posts() ){
$id=get_the_ID();
$currentClass= ($post->ID == $id) ? "current_post": ""; ?>
然后
<div class="post <?php echo $currentClass; ?>">.....
这没有经过测试,所以我只是假设$post->ID
将获取外部帖子的IDget_the_ID()
将获取循环内帖子的ID。如果这样不行,你能发布你的循环代码吗?我会做一些测试
EDIT
你的循环有一些问题。一是它只抓住了最后一类。我在谷歌上快速搜索了一下,找到了一个似乎可以在我的测试安装中使用的解决方案
here 仅当它们位于单个贴子页面上时才会显示。否则会发生不好的事情(如重复的帖子显示等)
<ul>
<?php
$IDOutsideLoop = $post->ID;
while( have_posts() ) {
the_post();
if(is_single()){
foreach( ( get_the_category() ) as $category )
$my_query = new WP_Query(\'category_name=\' . $category->category_nicename . \'&orderby=title&order=asc&showposts=100\');
if( $my_query ) {
while ( $my_query->have_posts() ) {
$my_query->the_post();
$currentClass=( is_single() && $IDOutsideLoop == $post->ID ) ? \' class="current_post"\' : \'\'; ?>
<li>
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>" <?php echo $currentClass ?>><?php the_title(); ?></a>
</li>
<?php
}
}
}
}
?>
</ul>