Wrordpressカスタム投稿- アーカイブページの作り方
カスタム投稿タイプに対応するアーカイブページテンプレートを用意すれば、一覧表示ができます。
archive-<post_type>.phpのサンプルコード
カスタム投稿タイプ:商品(product)の場合
archive-product.php
<?php get_header(); ?>
<main>
<h1>商品一覧</h1>
<?php if (have_posts()) : ?>
<ul>
<?php while (have_posts()) : the_post(); ?>
<li>
<a href="<?php the_permalink(); ?>">
<?php the_title(); ?>
</a>
</li>
<?php endwhile; ?>
</ul>
<?php else : ?>
<p>商品が登録されていません。</p>
<?php endif; ?>
</main>
<?php get_footer(); ?>
カスタム投稿をテンプレート内で表示する
トップページや固定ページで「新着の商品投稿3件」を表示したい場合(WP_Query)
<?php
$args = array(
'post_type' => 'product',
'posts_per_page' => 3
);
$product_query = new WP_Query($args);
?>
<?php if ($product_query->have_posts()) : ?>
<ul>
<?php while ($product_query->have_posts()) : $product_query->the_post(); ?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php endwhile; ?>
</ul>
<?php else : ?>
<p>商品が見つかりませんでした。</p>
<?php endif; ?>
<?php wp_reset_postdata(); ?>
カスタム投稿に対応するシングルページ
ファイル名をsingle-<post_type>.phpにすると自動で使われます。
カスタム投稿 product の個別記事の場合
single-product.php
