2011-05-31 70 views
1

我有一些職位用作事件,與事件的日期的自定義字段。我正在尋找按事件日期排序(按時間順序)的帖子。 我想知道:WordPress的:按自定義字段按時間順序排序帖子

  • 是否有可能活動的日期自定義字段設置爲「日期」格式 (現在,這是一個簡單的類型=文本)。
  • 如何訂購thoses帖子,如果我總是 使用相同的格式(如 dd/mm/yyyy)。我需要得到3個接近的事件(不是最後3個)。

wordpress是否有一個內置函數可以比較日期和今天的日期?

謝謝

回答

1

我剛剛做到了! (www.wherewordsgo.com)

好吧,我只有它的工作'網頁',但。

,但如果你犯了一個meta框的「最後期限」,然後放在爲yyyy/mm/dd格式的日期和添加到您的functions.php它可能會幫助:

ADD_ACTION(「WP」,「 check_page');功能check_page(){ if(is_page()){ add_filter('get_previous_post_sort','sort_it'); add_filter('get_next_post_sort','sort_it'); add_filter('posts_orderby','sort_it'); add_filter('posts_join','join_it'); add_filter('posts_where','where_it');

function sort_it() { 
     global $wpdb; 

     return " $wpdb->postmeta.meta_value ASC "; 
    } 

    function join_it($join) { 
     global $wpdb; 

     $join .= " LEFT JOIN $wpdb->postmeta ON($wpdb->posts.ID = $wpdb->postmeta.post_id) "; 

     return $join; 
    } 

    function where_it($where) { 
     global $wpdb; 
     $where .= "AND $wpdb->postmeta.meta_key = 'deadline' "; 

     return $where; 
    } 
} 

我得到了一些網站(我已經失去了鏈接...大傢伙WP雖然我認爲),並改變了它作爲必要的。就像我說的,它只適用於我的版本(我使用自定義類型)上的自定義頁面,但如果您在開始時將「is_page()」函數更改爲任何相對於您的函數,則可能適用於所有內容。

希望幫助

+0

http://pixeljar.net/2009/01/13/order-posts-by-custom-key-revisited/ – 2012-01-03 15:15:02

相關問題