我有一个静态的滑动滑块,可用来运行推荐书,而不是硬打字,我想从已设置的WordPress自定义帖子类型中将其拉出,有人可以向我指出正确的方向:
<section class="testimonials">
<div class="container text-center">
<div class="row">
<div class="col-md-12">
<div class="slick-testimonial">
<div class="item">
<div class="testimonial">
<img src="<?php bloginfo('template_url'); ?>/images/icons/testimonals.png" class="center-block">
<h1>What our customers say</h1>
<h3>"Fantastic service"</h3>
<p>Review Text Here</p>
<p class="name">Customer Name 1</p>
</div>
</div>
<div class="item">
<div class="testimonial">
<img src="<?php bloginfo('template_url'); ?>/images/icons/testimonals.png" class="center-block">
<h1>What our customers say</h1>
<h3>"Excellent"</h3>
<p>Review Text Here</p>
<p class="name">Customer Name 2</p>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
我认为我需要为自定义帖子类型创建一个数组,并在项目中添加标题名称和文本,但不确定如何编写。
答案 0 :(得分:1)
您只需要与WordPress的WP_Query类进行交互。这实际上是获得少量帖子的方法。
我还将考虑对滑块进行一些重组,以便“我们的客户说的是” 在单个幻灯片项之外,但我偏离了:
您所需要做的就是设置一个新的WP_Query
并将item
div替换为一个简单的while
循环:
<?php
$slider_args = array(
'post_type' => 'testimonials',
'posts_per_page' => 10
);
$slider_query = new WP_Query( $slider_args );
?>
<section class="testimonials">
<div class="container text-center">
<div class="row">
<div class="col-md-12">
<div class="slick-testimonial">
<?php
if( $slider_query->have_posts() ){
while( $slider_query->have_posts() ){ $slider_query->the_post(); ?>
<div class="item">
<div class="testimonial">
<img src="<?php bloginfo('template_url'); ?>/images/icons/testimonals.png" class="center-block">
<h1>What our customers say</h1>
<h3><?php the_title(); ?></h3>
<p><?php the_content(); ?></p>
<p class="name"><?php echo get_post_meta( get_the_ID(), 'reviewer_name', true ); ?></p>
</div>
</div>
<?php }
} else { ?>
<div class="item">
<div class="testimonial">
<h3>No Testimonials Found</h3>
</div>
</div>
<?php }
wp_reset_postdata();
?>
</div>
</div>
</div>
</div>
</section>
请注意,此代码有一些假设。您需要将post_type
替换为已注册的CPT的名称,并且可以调整使用posts_per_page
参数获得的CPT的数量。我之所以选择10个,是因为。
这还假设您将审阅者姓名保存在名为reviewer_name
的元字段中,但这足以使您入门