我有兩個自定義帖子類型,例如'汽車'和'自行車'。我已經使用WordPress的默認類別來分類兩個帖子類型的帖子。比方說,例如,類別是「紅色」,「藍色」和「黑色」。WordPress的:類別頁面上的自定義帖子類型分離
我在這裏想要實現的是,當我進入「紅色」類別頁面時,我想看到'汽車'和'自行車'歸類在'紅色'下。我使用的是category.php,這是我試圖運行查詢:
$car_args = array(
'posts_per_page' => -1,
'orderby' => 'date',
'order' => 'DESC',
'post_type' => 'cars',
'post_status' => 'publish',
'cat' => $cat
);
// The Query
$car_query = new WP_Query($car_args);
// The Loop
if ($car_query ->have_posts()) {
echo "<h3>Cars</h3>";
while ($car_query->have_posts()) {
$car_query->the_post();
echo get_post_type() . '<a href="'. get_permalink() .'">' . get_the_title() . '</a><br />';
}
} else {
// no posts found
}
$bikes_args = array(
'posts_per_page' => -1,
'orderby' => 'date',
'order' => 'DESC',
'post_type' => 'bikes',
'post_status' => 'publish',
'cat' => $cat
);
// The Query
$bikes_query = new WP_Query($bikes_args);
// The Loop
if ($bikes_query ->have_posts()) {
echo "<h3>Bikes</h3>";
while ($bikes_query->have_posts()) {
$bikes_query->the_post();
echo get_post_type() . '<a href="'. get_permalink() .'">' . get_the_title() . '</a><br />';
}
} else {
// no posts found
}
/* Restore original Post Data */
wp_reset_postdata();
查詢中的$貓獲得「紅色」類的類ID。這兩個查詢都正確限制'Red'類別的帖子,但'Cars'帖子類型和'Bikes'帖子類型的帖子都顯示出來,儘管我試圖通過帖子類型進行限制。我讀過幾篇文章,Wordpress忽略了分類頁面上的帖子類型參數。這是真的,如果是這樣,有沒有解決方法?
放棄你分類自定義查詢,返回到默認循環,然後使用'pre_get_posts'將每個頁面的帖子類型和自定義帖子設置爲您的類別歸檔頁面 –
Hi @PieterGoosen。謝謝,會嘗試。但如果我這樣做,我將不得不爲類別中的每種顏色都有類別 - {color} .php? – NJT
不,只有一個categoty.php會很好 –