Получить сообщения для пользовательского типа сообщения с WP_Query

9

Я пытаюсь заставить пользовательский пост возвращать запрос и отображать его, но вместо этого он возвращает и показывает стандартное / стандартное сообщение. Как я могу получать сообщения от моего 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; ?>
Гай Браун
источник

Ответы:

15

Предполагая, что ваш пользовательский тип записи называется "job_posting", вам просто нужно изменить запрос следующим образом:

$query = new WP_Query( array( 'post_type' => 'job_posting' ) );

Это можно найти в официальной документации .

Вы можете также использовать гораздо больше параметров - вы можете найти полный список в документации, на которую я ссылаюсь. Некоторые из них я бы порекомендовал рассмотреть posts_per_page(так что вы не получите все сразу) и установить post_status«публикацию» на тот случай, если будут возвращены какие-либо черновые / личные сообщения (чего в любом случае не должно быть, но мне нравится безопасно ;) ).

Тим Мэлоун
источник