ฉันมีสองประเภทโพสต์: Teachers
และ Students
ข้อมูลตัวอย่าง:
ประเภทกระทู้ของครู:
Teacher A
Teacher B
Teacher C
และประเภทการโพสต์ของนักเรียน:
Student A
Student B
Student C
and many more students
ฉันยังมีอนุกรมวิธานที่เรียกว่า student-role
ซึ่งมีค่าบางอย่าง:
Intern
Master Student
PhD Student
ในประเภทโพสต์ของนักเรียน ฉันใช้ความสัมพันธ์ ACF เพื่อมอบหมายครูให้กับนักเรียน นักเรียนสามารถมีครูได้มากกว่าหนึ่งคน
ตัวอย่างเช่น:
Student A
คือIntern
และถูกกำหนดให้เป็นTeacher A
และTeacher B
Student B
คือMaster Student
และถูกกำหนดให้เป็นTeacher C
Student C
คือPhD Student
และถูกกำหนดให้เป็นTeacher C
ฉันต้องการสร้างเพจแบบกำหนดเองสำหรับ teacher C
โดยที่ฉันแสดงเฉพาะ student-role
s ทั้งหมดเท่านั้น
จึงมีหน้าสำหรับครู C และควรแสดงรายการ Master Student
และ PhD Student
เนื่องจากมีนักเรียนสองคนภายใต้อนุกรมวิธานนั้น
ฉันพยายามดึงนักเรียนทั้งหมดก่อน จากนั้นจึงดึงบทบาทของนักเรียนทั้งหมดแต่ไม่แน่ใจว่าต้องทำอย่างไรต่อไป มีแนวคิดอะไรบ้าง
$args = array(
'posts_per_page' => -1,
'post_type' => 'students',
'meta_query' => array(
array(
'key' => 'acf_relationship',
'value' => 'Manual ID OF Teacher',
'compare' => 'LIKE'
)
)
);
// get all posts for teacher with ID
$all_posts = get_posts( $args );
// get all student roles
$tax_terms = get_terms( 'student-role');
meta_query
สำหรับสิ่งนี้ หากคุณใช้สิ่งนี้ในวงกว้าง นักเรียนและครูไม่กี่ร้อยคนก็ถือว่าไม่เลว แต่ meta_queries อาจทำงานช้าอย่างเจ็บปวดในชุดข้อมูลขนาดใหญ่ เนื่องจากฟิลด์meta_value
ไม่ได้รับการจัดทำดัชนีในฐานข้อมูล - person Xhynk   schedule 27.04.2019