У мене є набір аргументів за замовчуванням, які я передаю значення дюйма Всі вони працюють, коли справа доходить до порядку і orderby, за винятком member_count
яка в базі даних зберігається як рядок, алепотрібно вести себе як номер. З цієї причини я маю тип встановлений як числовий, і я підозрюю, що sql лиття працює, коли ви робите порівняння, але не працює, коли ви робите замовлення? Тільки здогадка.
public $default_args = array(
"post_type" => "clans",
"post_status" => "publish",
"posts_per_page" => -1,
"s" => "",
"post__in" => "",
"orderby" => "",
"order" => "",
"date_query" => array(
"before" => "",
"after" => "",
"inclusive" => true
),
"meta_query" => array(
"relation" => "AND",
"average_skill_level" => array(
"key" => "average_skill_level",
"compare" => "EXISTS",
),
"activity_level" => array(
"key" => "activity_level",
"compare" => "EXISTS",
),
"language" => array(
"key" => "language",
"compare" => "EXISTS",
),
"applications" => array(
"key" => "applications",
"compare" => "EXISTS",
),
"member_count" => array(
array(
"key" => "member_count",
"compare" => ">=",
"type" => "NUMERIC"
),
array(
"key" => "member_count",
"compare" => "<=",
"type" => "NUMERIC"
)
)
)
);
деякі значення, які я поклав на замовлення, були member_count
і meta_value_num member_count
і звичайно DESC
і ASC
для замовлення
Відповіді:
0 для відповіді № 1"member_count" => array(
"member_min" => array(
"key" => "member_count",
"compare" => ">=",
"type" => "NUMERIC"
),
"member_max" => array(
"key" => "member_count",
"compare" => "<=",
"type" => "NUMERIC"
)
)
Я назвав два масиви всередині member_count і закінчив сортуватися цими ключами.