2015-06-22 2 views
0

В WordPress У меня есть только PUBLISH_DATE (не meta_key) и meta_key "датой_окончания"Диапазон дат найти в WordPress

Пример: событие от 2015-06-22 (PUBLISH_DATE) в 2015- 08-24 (meta_ket = "end_date")

теперь я хочу найти все события

  1. (От 2015-07-05 до 2015-07-24)

    или

  2. (от 2015-08-05 до 2015-09-25)

    и должен показать событие в примере

Этот код не работает:

$opt = array(
'post_type'  => 'event_info', 
'posts_per_page' => '40', 
'paged' => $page_num, 
'orderby' => 'post_date ID', 
'order' => 'DESC', 

'relation' => 'OR', 

    'meta_query' => array(
     'key' => 'end_date', 
     'value' => array('$date_start','$date_end'), 
     'compare' => 'BETWEEN', 
     'type' => 'numeric'), 


    'date_query' => array(
     array(
      ...... 
      'compare' => 'BETWEEN', 
     ), 
    ), 

) 
); 

соотношение между мета ключ и data_query не работают, текущая идея заключается в создании 2 запроса, но я не хочу это сделать

ответ

-1

попробовать это: здесь я добавил метку времени в StartDate и enadate мета ключ

$chkdt = current_time('timestamp'); 
$args = array('post_type'=>'event_info', 'post_status' => 'publish','posts_per_page'=>-1,'orderby' => 'ID','order' => 'DESC', 'meta_query' => 
array(
'relation' => 'AND',  
/******filter start date and End date****************/ 
array(
'key' => 'end_date', 
'value' => $chkdt, 
'compare' => '>=', 
'type' => 'NUMERIC', 
), 
array(
'key' => 'start_date', 
'value' => $chkdt, 
'compare' => 'NUMERIC', 
), 
/******END filter start date and End date****************/ 
), 
); 
+0

Не используйте слово для подготовки код. – Strawberry

+0

Но у меня нет даты начала в мета-ключе, используется дата публикации, я думаю, что это моя проблема ... – Nefro

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