2016-12-18 49 views
0

我想查詢2個日期之間的一些帖子,看起來它不工作,因爲我的職位是不是整數YYYYMMDD的格式,但在歐洲格式DD.MM.YYYYwp_query

$args = array(
    'orderby' => 'meta_value', 
    'meta_key' => 'usp-custom-rdvp_date_event_start', 
    "order" => "ASC", 
    'meta_query' => array(
     array(
     'key'  => 'usp-custom-rdvp_date_event_start', 
     'value' => array($fromDate, $toDate), 
     'type' => 'DATE', 
     'compare' => 'BETWEEN', 
    ), 
), 
); 

你有沒有在2歐洲日期之間查詢的黑客?

PS。我不能更改日期格式

+0

你想要改變日期格式嗎? –

+0

不,如果usp-custom-rdvp_date_event_start和$ fromDate $ toDate中的日期格式爲YYYYMMDD,則此操作正在運行。 如果日期格式是別的東西(對我來說:DD.MM.YYYY),這個查詢不起作用。我無法更改存儲在數據庫usp-custom-rdvp_date_event_start中的值,因此問題是: – Iteration

+0

如何使用帶特殊日期格式的wp_query進行查詢。謝謝 – Iteration

回答

1

您可以輕鬆地與一些數組操作更改日期格式:

$mydate = 'DD.MM.YYYY'; 
echo implode('', array_reverse(explode('.', $mydate))); # Output: YYYYMMDD 

您也可以找到使用DateTime類更好的辦法。

$date_str = '02.04.2016'; 
$myDateTime = DateTime::createFromFormat('d.m.Y', $date_str); 
echo $myDateTime->format('Ymd'); # Output: 20160402 
+0

你好, 對不起,我認爲有一個誤解。我無法更改「usp-custom-rdvp_date_event_start」的值,它以另一種軟方式將其存儲在數據庫中。我的問題是不以另一種方式顯示日期格式,我的問題是查詢後用「wp_query」 – Iteration

+0

一旦你知道如何改變格式,你可以將它應用於'$ fromDate'和'$ toDate'。 – RRikesh

+0

對不起,沒有。 USP-定製rdvp_date_event_start和$ FROM日期和$ TODATE 都在相同的日期格式 - > DD.MM.YYYY 這只是WP_query樣子,他不明白,日期格式 「型」 =>「DATE '或'type'=>'NUMERIC' – Iteration