サポート » 使い方全般 » WP_Queryループでの先頭固定に sticky クラスが付かない

  • 解決済 asako

    (@asako08)


    固定ページでトップページを作成し、投稿を数件抜粋して表示するようにしています。
    以下のコードで表示させていますが、先頭固定の投稿に sticky クラスが付きません。
    sticky クラスが付くようにするにはどうしたら良いでしょうか?

    <?php
    $args = array(
    'post_type' => 'post',
    'posts_per_page' => 3,
    );
    $my_query = new WP_Query($args);
    if ( $my_query->have_posts()) :
    ?>
    <ul class="my-post-list">
    <?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
    
    <li id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
    <a href="<?php the_permalink(); ?>">
    .
    .
    .
    </a>
    </li>
    
    <?php endwhile; ?>
    <?php wp_reset_postdata(); ?>
    </ul>
    <?php endif; ?>
    • このトピックはasakoが1年、 4ヶ月前に変更しました。
3件の返信を表示中 - 1 - 3件目 (全3件中)
  • stickyクラスは、ブログ投稿インデックスのときにpost_class()が付与するので、
    それ以外のページでsticky付けたい場合は自分で追加することになると思います。

    こんな感じではどうでしょうか。
    post_class( is_sticky() ? 'sticky' : '' );

    トピック投稿者 asako

    (@asako08)

    @ounziw
    @ishitaka

    ご返信ありがとうございました。
    @ishitaka 様に教えていただいた記述で実現できました!

    stickyクラスは、ブログ投稿インデックスのときにpost_class()が付与する

    とのこと、覚えておきます。

    ありがとうございました!!

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「WP_Queryループでの先頭固定に sticky クラスが付かない」には新たに返信することはできません。