私は今解決して問題を適切に解決する方法を見つけようとしています。Wordpressでメタ値を並べ替え
私は私がちょうど良い年のメタフィールドでそれを並べ替えることができますソートする必要がある大学の講義シリーズを持っています。しかし、学期ごとにソートするとアルファベット順にソートされるので、冬、春、秋、秋、春、冬の順番に並べ替えることになります。
私は、ソートの優先順位のためのポスト明らかに少し厄介である次のように現在書か
クエリー引数に別のフィールドを追加することなく、好ましくは、正しい順序で順番にこれを行う方法を把握する必要があります。
$args = array(
'post_type' => 'mcm_geri-ed',
'posts_per_page' => $posts_per_page,
'meta_query' => array(
'semester' => array(
'key' => 'semester',
),
'year' => array(
'key' => 'year'
)
),
'orderby' => array(
'year' => 'DESC',
'semester' => array(
'value' => 'date'
)
),
'paged' => $paged
);
私はこれもお勧めします - またはすべてを選択し、あまりにも多くない場合は手動でソートを行います。 WP_Queryを使用しても可能です。 – Mikk3lRo
私は原則について同意しますが、好ましくは 'FIND_IN_SET(meta_semester、 'Fall、Spring、Winter')ASCを使用します。 FIND_IN_SETは、コンマで区切られた2番目の文字列の最初の引数の位置を返します。そのため、必要な順番でリストされる必要があります。 – CBroe
私はWP_Queryで試して1時間後に可能であるというコメントを取りました。あなたは[能力を加える]ことができます(https://gist.github.com/mikeschinkel/6402058)。 janhが提案したように 'posts_orderby'フックを使うのはかなり簡単です。 – Mikk3lRo