Intereting Posts
Экран редактирования настраиваемого типа сообщений показывает все типы сообщений, независимо от типа сообщения по URL-адресу Добавление модального диалога jQuery в область администратора Я хочу, чтобы URL-адрес из файла на носителе с использованием файла заголовка Видео, охватываемое содержимым страницы в полноэкранном режиме – как это исправить? Вставка данных в базу данных с использованием формы как показать более одного сообщения в три столбца запроса Управление обновлениями WP Core и плагинов для клиентов Как изменить пользовательский frontpage.php на незарегистрированную страницу блога? Как я могу использовать другой файл шаблона для страниц с разбивкой по страницам блога? Cron при редактировании сообщения Защита паролем страницы с несколькими паролями Как добавить метаполя на страницу добавления / редактирования пользовательской таксономии? Сделать URL как / fr / что-то отображаться таким же, как / что-то Как создать таблицу базы данных для конкретного блога в многопользовательском режиме? (Большая проблема) Блог уходит каждый день .. что я должен делать?

Сортировка WP_Query по meta_value_num или дате

Я использую meta_value_num для сортировки сообщений по цене и позволяет пользователям использовать раскрывающийся список для изменения между max и min. Теперь мне нужна возможность выбирать из Min Price или Max Price или Newest Posted или самой старой. Можно ли сортировать по нескольким значениям?

Запрос WP

 $args = array( 'order' => $_POST['date'], 'orderby' => 'meta_value_num date', 'post_type' => 'product', 'meta_key' => 'ek-product-price', ); 

форма

  <select id="select1" type="text" name="date"> <!-- FIRST 2 OPTIONS FOR SORT BY PRICE META VALUE --> <option value="ASC" type="hidden">ASC</option> <option value="DESC" type="hidden">DESC</option> <!-- ADD IN OPTION FOR SORT BY DATE ADDED --> </select> 

Solutions Collecting From Web of "Сортировка WP_Query по meta_value_num или дате"

Получил его работу со следующим методом. Вероятно, есть лучший способ сделать это, но это достаточно хорошо для его цели.

Добавлен оператор IF для опций

 if($_POST['date'] === 'HIGH'){ $order = 'meta_value_num'; $sort = 'DESC'; } elseif ($_POST['date'] === 'LOW'){ $order = 'meta_value_num'; $sort = 'ASC'; } elseif ($_POST['date'] === 'ASC'){ $order = 'date'; $sort = 'ASC'; } elseif ($_POST['date'] === 'DESC'){ $order = 'date'; $sort = 'DESC'; } 

Тогда внутри $ args

 $args = array( 'order' => $sort, 'post_type' => 'product', 'meta_key' => 'ek-product-price', 'orderby' => $order, ) 

форма

 <select id="select1" type="text" name="date"> <option value="ASC" type="hidden">ASC</option> <option value="DESC" type="hidden">DESC</option> <option value="HIGH" type="hidden">HIGH</option> <option value="LOW" type="hidden">LOW</option> </select>