Intereting Posts
Сортировка сообщений Бэкэнд-поиск; включить CPT meta? получить все электронные письма как базу данных в WordPress для просмотра всех отправленных писем Как настроить различные permlalinks для сообщений и страниц? Как я могу связать весь мой избранный образ статьи? Создание файла плагина, доступного через url rewrite? как добавить текст в сообщения из тегов Каковы все доступные параметры для query_posts? Проверка содержимого сообщения для короткого кода, но содержимое возвращается как пустое Когда использовать wp_schedule_single_event для процессов async / non-blocking? Поиск только записей в блоге с главной страницы WordPress сайта? Добавить кнопку, чтобы опубликовать страницу редактирования, когда post_status = publish Как проверить пользователя из ouside wordpress / php? Включение «wp-load.php» после другого include () генерирует ошибку Symlink плагин в локальной разработке, работает, но получил сообщение об ошибке Debug – Windows 10

Заказ пользовательского типа сообщений несколькими настраиваемыми полями

Мне было интересно, сможете ли вы помочь с проблемой, которую я испытываю?

Я внедрил исправление, которое вы придумали в этом сообщении: Как заказать собственный тип сообщений несколькими настраиваемыми полями? однако, когда я добавляю фильтр, сообщения не отображаются.

То, что я пытаюсь достичь, – это заказать таблицу лиг по очкам, а затем разницу мячей.

Это моя функция в functions.php

function orderbyreplace($orderby ) { global $wpdb; return str_replace($wpdb->prefix.'postmeta.meta_value', 'mt1.meta_value, mt2.meta_value ASC', $orderby); } 

И вот запрос в файле шаблона

 $args = array( 'post_type'=>'standings', 'orderby' => 'meta_value_num', 'meta_key' => '_pts', 'meta_query' => array( array( 'key' => '_pts', 'value' => '0', 'type' => 'NUMERIC', 'compare' => '!=' ), array( 'key' => '_dif', 'value' => '0', 'type' => 'NUMERIC', 'compare' => '!=' ) ), ); add_filter('posts_orderby','orderbyreplace'); $loop = new WP_Query( $args ); remove_filter('posts_orderby','orderbyreplace'); 

Если вы могли бы потратить несколько минут на свое время, чтобы взглянуть на это и сделать какие-либо предложения, которые у вас есть, и указать что-нибудь, где я, возможно, ошибся, что было бы очень полезно.

РЕДАКТИРОВАТЬ

Я изменил код на следующий, и он знает, что возвращает сообщения, но он только заказывает их по первой мета-клавише и игнорирует другую.

 function orderbyreplace($orderby) { global $wpdb; return str_replace($wpdb->prefix.'postmeta.meta_value_num', 'mt1.meta_value, mt2.meta_value DESC', $orderby); } $args = array( 'post_type'=>'standings', 'orderby' => 'meta_value_num', 'meta_key' => '_pts', 'meta_query' => array( array( 'key' => '_pts', ), array( 'key' => '_dif', ) ), ); add_filter('posts_orderby','orderbyreplace'); $loop = new WP_Query( $args ); remove_filter('posts_orderby','orderbyreplace'); 

Большое спасибо,

Бен

Solutions Collecting From Web of "Заказ пользовательского типа сообщений несколькими настраиваемыми полями"