我正在处理服务cpt,并希望在单个帖子的同一个cpt中显示其他帖子的列表。
我使用的代码是:
<?php
$loop = new WP_Query( array(
'post_type' => 'services',
'posts_per_page' => 6
));
?>
<ul>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
<li>
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
<h4><?php the_title(); ?></h4>
</a>
</li>
<?php endwhile; wp_reset_query(); ?>
</ul>
现在我的问题是,有没有办法在当前帖子中添加一个类?其目的是使其与列表中的其他帖子不同。
答案 0 :(得分:1)
这很容易,您可以随时在
之前和之后添加课程阅读此文档https://developer.wordpress.org/reference/functions/the_title/
<?php the_title( '<div class="wrapper">', '</div>' ); ?>
答案 1 :(得分:0)
是首先获取当前的帖子ID并将该ID与循环ID匹配,如果它只是添加类,只需使用下面的代码
<?php
$current_post_id = get_the_ID();
$loop = new WP_Query( array(
'post_type' => 'services',
'posts_per_page' => 6, ));
?>
<ul>
<?php
while ( $loop->have_posts() ) : $loop->the_post();
$class = ($current_post_id == $loop->ID) ? "current-post" : '';
?>
<li class="<?php echo $class; ?>">
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
<h4><?php the_title(); ?></h4>
</a>
</li>
<?php endwhile; wp_reset_query(); ?>
</ul>
它将添加课程&#34; current-post&#34;只有当前的帖子和其他帖子它不会添加任何内容。 风格使用
<style>
li{
/*all posts*/
}
li.current-post{
/*specific for the current post*/
}
</style>
答案 2 :(得分:0)
使用功能
<?php post_class(); ?>
E.g:
<div <?php post_class(); ?>>
<?php
$loop = new WP_Query( array(
'post_type' => 'services',
'posts_per_page' => 6
));
?>
<ul>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
<li <?php post_class(); ?>>
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
<h4><?php the_title(); ?></h4>
</a>
</li>
<?php endwhile; wp_reset_query(); ?>
</ul>