0
我按照the official WordPress site上的說明創建了一個頁面,該頁面顯示了我的一個分類法的排序列表。它工作得很好,除非我真的想自然分類如果可能的話,但在wp_list_categories
函數中,「order」參數的唯一有效選項是「ASC」和「DESC」。按自然順序對WordPress分類列表排序
我已經嘗試使用以下沒有成功(返回錯誤)將自然排序的陣列修改功能:
$categories = get_categories($r); // this line is part of the original function
foreach ($categories as $key => $row) {
$sortNames[$key] = $row[1];
}
array_multisort($sortNames, SORT_NATURAL, $categories);
下面介紹一下$categories
數組的第一個元素看起來像一個轉儲(我按「名稱」排序):
array(389)
{
[0]=> object(stdClass)#363 (15)
{
["term_id"]=> &string(3) "541"
["name"]=> &string(17) "2° Ms. astron. 1"
["slug"]=> &string(13) "2-ms-astron-1"
["term_group"]=> string(1) "0"
["term_taxonomy_id"]=> string(3) "567"
["taxonomy"]=> string(13) "manuscript-id"
["description"]=> &string(0) ""
["parent"]=> &string(3) "540"
["count"]=> &int(1)
["cat_ID"]=> &string(3) "541"
["category_count"]=> &int(1)
["category_description"]=> &string(0) ""
["cat_name"]=> &string(17) "2° Ms. astron. 1"
["category_nicename"]=> &string(13) "2-ms-astron-1"
["category_parent"]=> &string(3) "540"
}
我確實希望按名稱按字母順序排列結果(自然排序),而不是創建的順序。期望的結果:abc3,abc18,abc103,def22,但是名稱非自然排序:abc103,abc18,abc3,def22。 –
啊我明白了,我會修改我的答案。你遇到這個問題的原因是因爲排序工作的方式。 10低於18,1低於3.它不檢查整個數字。 –