2011-05-31 69 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

相关问题