【SnowMonkey】「任意のタクソノミーの投稿」ブロックの表示順序を並べ替える(ソートする)方法【WordPress】
コード
functions.php
/**
* 「任意のタクソノミーの投稿」ブロックの表示順序を並べ替える(基本)
*/
add_filter(
'snow_monkey_taxonomy_posts_widget_args',
function ($query_args) {
$query_args['orderby'] = 'modified'; // 更新日順
$query_args['order'] = 'DESC'; // 降順(新しい順)
return $query_args;
}
);
カスタムフィールドを基準に並べ替える場合は
functions.php
/**
* 「任意のタクソノミーの投稿」ブロックの表示順序を並べ替える(カスタムフィールド)
*/
add_filter(
'snow_monkey_taxonomy_posts_widget_args',
function ($query_args) {
$query_args['meta_key'] = 'special_point'; // 使用するカスタムフィールドのフィールド名
$query_args['orderby'] = 'meta_value_num'; // カスタムフィールドの値を数値として扱う
$query_args['order'] = 'DESC'; // 降順(大きい順)
return $query_args;
}
);
並べ替えで使用するパラメータ
orderby | |
---|---|
none | 順序をつけない |
ID | 投稿IDで並べ替える(◯ ID × id) |
author | 投稿者で並べ替える |
title | タイトルで並べ替える |
name | スラッグで並べ替える |
type | 投稿タイプで並べ替える |
date | 投稿日時で並べ替える |
modified | 更新日時で並べ替える |
parent | 投稿/固定ページの親IDで並べ替える |
rand | ランダムに並べ替える |
comment_count | コメント数で並べ替える |
relevance | 文字列検索のとき次の順で並び替える 1. 文字列全体がマッチ 2. すべての単語がタイトルに含まれる 3. いずれかの単語がタイトルに現れ 4. 文字列全体が post_content に現れる |
menu_order | 固定ページの表示順で並べ替える |
meta_value | カスタムフィールドの値を文字列として並べ替える ・クエリに meta_key=keyname(カスタムフィールドのフィールド名) を指定しておく必要がある ・カスタムフィールドの値を特定の型にキャストしたければ meta_type を指定できます。 ・有効な値は 'NUMERIC’, 'BINARY’, 'CHAR’, 'DATE’, 'DATETIME’, 'DECIMAL’, 'SIGNED’, 'TIME’, 'UNSIGNED’ ・meta_type を使うとき、それに応じて meta_value_* も使える 例えば meta_type に DATETIME を指定するとき、 ソート順の定義に meta_value_datetime を使えます。 |
meta_value_num | カスタムフィールドの値を数値として並び替える ・クエリに meta_key=keyname(カスタムフィールドのフィールド名) を指定しておく必要がある |
post__in | post__in パラメータの配列に並んだ投稿 ID 順で並べ替える |
post_name__in | post_name__in パラメータの配列に並んだ投稿スラッグの順で並べ替える |
post_parent__in | post_parent__in パラメータの配列に並んだ親投稿 ID の順で並べ替える |
order | |
---|---|
ASC | Ascending:最低から最高へ昇順 (1, 2, 3; a, b, c). |
DESC | Descending:最高から最低へ降順 (3, 2, 1; c, b, a). |