以下の関数では、$ myrecentposts変数に5つの最新の投稿の集合が保持されます。これらの5つの投稿をどのようにしてforループに書き込む前に並べ替えることができるので、配列のポスト・タイトル・インデックスによって注文されますか?名前付きインデックスによる配列の並べ替え方
function getLatestPostsAndSort($post)
{
$myrecentposts = get_posts(
array('post__not_in' => get_option('sticky_posts'),
'numberposts' => 5
)
//NEED TO RESORT THE ARRAY HERE BY [POST-TITLE]
foreach($myrecentposts as $idxrecent=>$post)
{
?><li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li><?php
}
}
PS:データベースから希望の順序で取得することをおすすめします。しかし、get_posts()メソッドはそのようなオプションを提供しません。デフォルトの注文は、ポスト日付(最新のもの)です。注文を「タイトル」に変更すると、投稿日が考慮されず、ポストコレクション全体がプルされ、タイトルで注文されます。
可能重複(http://stackoverflow.com/questions/2699086/php-sort-multidimensional-array-by-value) – thetaiko
なぜ'the_title()'はパラメータを取らない関数ですか? – Matthew
@konforce - the_title()は$ postオブジェクトの組み込みメソッドです –