問題描述
我已經創建了一個自定義的帖子類型,它現在有大約 100 個帖子。我只想按字母順序顯示這些字母順序,而不是默認的,最近似乎是最近的。我已經嘗試過各種插件和其他解決方案,但大多數只允許手動排序 (太多的帖子可以工作),我被告知,下面的代碼應該可以工作,但似乎沒有任何效果。
任何幫助讚賞。
<?php
$args = array( 'post_type' => 'tenant', 'posts_per_page', 'orderby=title&order=ASC' => 5 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
?>
最佳解決方案
嘗試這個:
<?php
$args = array( 'post_type' => 'tenant', 'posts_per_page'=>5, 'orderby'=>'title','order'=>'ASC');
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
?>
您可以在這裏找到更多信息 o 自定義查詢:http://codex.wordpress.org/Class_Reference/WP_Query
次佳解決方案
我意識到這是一箇舊的線程,但我遇到了試圖做同樣的事情,並決定使用 functions.php 而不是模板和循環添加一個 pre-query 操作。
在我的情況下我有一個大約 25 個瑜伽課的頁面,設置為一個定製的帖子類型’classes’
// function and action to order classes alphabetically
function alpha_order_classes( $query ) {
if ( $query->is_post_type_archive('classes') && $query->is_main_query() ) {
$query->set( 'orderby', 'title' );
$query->set( 'order', 'ASC' );
}
}
add_action( 'pre_get_posts', 'alpha_order_classes' );
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。