รับโพสต์สำหรับประเภทโพสต์ที่กำหนดเองด้วย 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เป็น 'เผยแพร่' ในกรณีที่โพสต์แบบร่าง / ส่วนตัวใด ๆ ได้รับการส่งคืน (ซึ่งพวกเขาไม่ควรทำอยู่ดี ปลอดภัย;))

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.