http://wordpress.org/support/topic/plugin-all-in-one-event-calendar-order-event-by-start-date?replies=3#post-2443756
我在尋找類似的東西。我發現上面的帖子應該幫助!
「事件是帖子,但是事件開始/結束日期=發佈日期當你進行查詢時,你必須做一個事件查詢,而不是發佈查詢,換句話說,你必須使用插件的API來檢索事件可以通過開始或結束日期排序感興趣的功能get_events_between()它位於Ai1ec_Calendar_Helper類的類位於:應用程序/幫手/類ai1ec個歷helper.php我修改你的代碼有點我。沒有測試過所以有可能是拼寫錯誤或其他錯誤,但邏輯是一樣的:http://pastebin.com/SNp4TJij「
更新!
所以我真的得到了現在這個想通了......這是我建立以便讓今天,從今天至一年事件的代碼。
global $ai1ec_calendar_helper, $ai1ec_events_helper;
// gets localized time
$bits = $ai1ec_events_helper->gmgetdate($ai1ec_events_helper->gmt_to_local(time()));
//sets start time to today
$start = gmmktime(0,0,0,$bits['mon'],$bits['mday'],$bits['year']);
//sets end time to a year from today i.e. $bits['year']+1
$end = gmmktime(0,0,0,$bits['mon'],$bits['mday'],$bits['year']+1);
//Look in class-ai1ec-calendar-helper.php for details
$get_events = $ai1ec_calendar_helper->get_events_between($start,$end);
//loop through results to get post_ids
foreach($get_events as $event):
$post_ids[] = $event->post_id;
endforeach;
// The New Events Query
$args = array(
'posts_per_page' => 4,
'paged' => get_query_var('paged'),
'post_type'=> 'ai1ec_event',
'post__in' => $post_ids
);
$events_added = new WP_Query($args);
// The Loop
while ($events_added->have_posts()) : $events_added->the_post();
$event = Ai1ec_Events_Helper::get_event($post->ID);
//Your code here
endwhile;
wp_reset_postdata();
您也可以使用ARGS使用功能get_events_relative_to()的開始時間,對結果進行數量限制,頁偏移(這是在他們的意見用於ai1ec爲wp分頁不一樣),和過濾器...它返回一個事件對象的多維數組。我必須創建$ events = $ get_events ['events'],並在我的foreach中使用$ events來正確檢索post_ids。
我通過ai1ec-themes查看了如何顯示事件數據的示例。
echo apply_filters('the_content', $event->post->post_content);
返回經過HTML格式化喜歡在一個單一的活動頁面顯示事件信息。
我試過使用該代碼。事件顯示在正確的時間範圍內,但是以錯誤的開始時間順序顯示(但爲了發佈日期) – Rosencruez 2012-09-07 22:53:12