[wp]カスタム投稿一覧出力サンプル

コピペ用

個人的テンプレ

<?php
$myQuery = new WP_Query();
$param = array(
    'posts_per_page' => '-1',
    'post_type' => '【カスタム投稿名】',
    'tax_query' => array(
        array(
          'taxonomy' => '【カスタム投稿スラッグ】',
          'field'    => 'slug',
          'terms'    => '【カスタム投稿ターム】',
        ),
    ),
);
$myQuery->query($param);
?>
<?php if($myQuery->have_posts()): ?>
<ul>
<?php while($myQuery->have_posts()) : $myQuery->the_post(); ?>
    <li>
        <a href="<?php the_permalink(); ?>">
            <img src="<?php if(get_the_post_thumbnail_url()): echo get_the_post_thumbnail_url(); else: echo get_template_directory_uri().'/img/noimg.jpg'; endif; ?>" alt="<?php the_title(); ?>">
            <?php the_title(); ?>
        </a>
    </li>
<?php endwhile; ?>
</ul>
<?php endif; ?>
<?php wp_reset_postdata(); ?>

メモ

「Intuitive Custom Post Order」の並び替えも効く。ダメっぽかったら並び順を指定する。

タームを限定しないなら「tax_query」ごと削除。

ループ処理終了したら「wp_reset_postdata();」で締める。

whileだから加算を突っ込んで連番付与可能。

「if($myQuery->have_posts()):」は投稿の有無の判定なんで、投稿がない場合に格納してる枠自体取っ払いたい事があるからwhileとは分けて書いておく。

コメント

タイトルとURLをコピーしました