Многофакторная сортировка постов в цикле wp_query
-
Добрый день.
Возник вопрос. Существует такая конструкция для вывода постов в пользовательской таксономии:
$args = array( 'post_type' => 'my-custom-type', 'meta_query' => array( 'relation' => 'AND', array( 'key' => 'ratings_users', 'type' => 'NUMERIC', ), array( 'key' => 'ratings_average', 'type' => 'NUMERIC', ), array( 'key' => 'views', 'type' => 'NUMERIC', ), ), 'orderby' => 'meta_value_num', 'order' => 'DESC', ); $query = new WP_Query( array_merge( $args, $wp_query->query ) )
Задача сделать сортировку по произвольным полям следующим образом:
1) первыми идут посты с наивысшем значением поля «ratings_users»;
2) если значения «ratings_users» одинаковые, то первыми идут посты с наивысшим значением поля «ratings_average»;
3) если значения обоих полей одинаковые или же нулевые, то сортировка идёт по наивысшему значению поля «views».В данном примере действует только сортировка по «ratings_users», как первым значением в массиве. Остальные на сортировку не влияют.
Как можно модифицировать функцию или какие есть ещё безплагиновые методы реализации многофакторной сортировки?
Спасибо.
- Тема «Многофакторная сортировка постов в цикле wp_query» закрыта для новых ответов.