【SnowMonkey】「任意のタクソノミーの投稿」ブロックの表示順序を並べ替える(ソートする)方法【WordPress】

Web開発SnowMonkey,WordPress,PHP

コード

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__inpost__in パラメータの配列に並んだ投稿 ID 順で並べ替える
post_name__inpost_name__in パラメータの配列に並んだ投稿スラッグの順で並べ替える
post_parent__inpost_parent__in パラメータの配列に並んだ親投稿 ID の順で並べ替える
order
ASCAscending:最低から最高へ昇順 (1, 2, 3; a, b, c).
DESCDescending:最高から最低へ降順 (3, 2, 1; c, b, a).