カスタム投稿にクエリと表示を返させようとしていますが、代わりにデフォルトの投稿または標準の投稿を表示しています。 CPTから投稿を受け取るにはどうすればよいですか。
$query = new WP_Query( array( 'job_posting_type' => 'Job Post' ) );
if ( $query->have_posts() ) : ?>
<?php while ( $query->have_posts() ) : $query->the_post(); ?>
<div>
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
</div>
<?php endwhile; wp_reset_postdata(); ?>
<!-- show pagination here -->
<?php else : ?>
<!-- show 404 error here -->
<?php endif; ?>
カスタム投稿タイプの名前が「job_posting」であると仮定すると、クエリを次のように変更するだけです。
$query = new WP_Query( array( 'post_type' => 'job_posting' ) );
これは 公式ドキュメント内 にあります。
使用したいパラメータが他にもたくさんあります-私がリンクしたドキュメントで完全なリストを見つけることができます。私が検討することをお勧めするものは、posts_per_page
(すべてを一度に返さないようにする)、およびドラフト/プライベート投稿が返される場合に備えてpost_status
を 'publish'に設定することですとにかくすべきではありませんが、私は安全であるのが好きです;))。