0

Wordpress にカルーセルのコードがあります

<?php 
    $the_query = new WP_Query(array(
     'category_name' => 'home-slider', 
     'posts_per_page' => 5  
    )); 
    while ( $the_query->have_posts() ) : 
    $the_query->the_post();
?>
<div class="sl-slide">
 <?php the_post_thumbnail('large');?>
 <div class="sl-slide-inner">
 <?php the_title();?>
 <?php the_excerpt();?>
</div>
</div>
<?php 
endwhile; 
wp_reset_postdata();
?>

カルーセルに5件の投稿を表示します。すべてのページで静的変数を作成する基本的な If-else ステートメントが必要です。例えば:。

if (post == 1) {
 $aka = 7;
} else if (post == 2) {
 $aka = 8;
} else if (post == 3) {
 $aka = 9;
} .. and etc.

WP で実装する方法がわかりません。どの投稿が現在あるかをどのように言えばよいですか?

4

1 に答える 1

1

WP_Query while-loop では、標準の投稿オブジェクトを持つ $post 変数で現在の投稿にアクセスできます。ループの前に次の行があることを忘れないでください。

<?php 
    global $post;
    $the_query = new WP_Query(array(
     'category_name' => 'home-slider', 
     'posts_per_page' => 5  
    )); 
    while ( $the_query->have_posts() ) : 
    $the_query->the_post();
?>
<div class="sl-slide">
<?php
if ($post->ID == 1) {
 $aka = 7;
} else if ($post->ID == 2) {
 $aka = 8;
} else if ($post->ID == 3) {
 $aka = 9;
}
?>
 <?php the_post_thumbnail('large');?>
 <div class="sl-slide-inner">
 <?php the_title();?>
 <?php the_excerpt();?>
</div>
</div>
<?php 
endwhile; 
wp_reset_postdata();
?>
于 2013-02-01T22:44:36.443 に答える