2016-06-22 8 views
0

я работаю на веб-сайте мероприятия с каландра всех событий рода двумя customfieldsWordPress: Сортировка по нескольким мета ключей с WP_Query

  1. date_start - в день мероприятия. данные хранятся следующим образом: 20160622 на сегодня> 22/06/2016

  2. time_start - время начала события в этот день. данные хранятся для немецкого использования. 10 утра = 10:00/3 вечера = 15:00/8 вечера = 20:00

Чтобы отсортировать события только DATE_START работает.

$query = new WP_Query(array( 
      'post_type' => 'veranstaltungen', 
      'post_status' => 'publish', 
      'cat' => '1,2,3,4,5', 
      'posts_per_page' => -1, 
      'meta_key' => 'date_start', 
      'orderby' => array('meta_value_num' => 'ASC'), 
      'order' => 'DESC' 
     )); 

Теперь им требуется решение для сортировки также с пользовательским полем time_start. Когда события начинаются в 15:00 (15:00), он не должен отображаться после 8 вечера (20:00).

Что в моем случае правильное использование «meta_query» для сортировки пользовательских флагов по дате и времени?

ответ

0

Думаю, вам нужно использовать meta_query. Попробуйте сделать что-то вроде ниже.

$query = new WP_Query(array( 
    'post_type' => 'veranstaltungen', 
    'post_status' => 'publish', 
    'cat' => '1,2,3,4,5', 
    'posts_per_page' => -1, 
    'meta_query' => array(
     array(
       'key'  => 'date_start', 
       'orderby' => 'meta_value_num', 
       'order' => ASC, 
      ), 
      array(
       'key'  => 'time_start', 
       'orderby' => 'meta_value', 
       'order' => DESC, 
      ), 
    ), 
)); 

 Смежные вопросы

  • Нет связанных вопросов^_^