http://wordpress.org/support/topic/plugin-all-in-one-event-calendar-order-event-by-start-date?replies=3#post-2443756
私は似たような探しています。私は助けるべき上記の記事を見つけました!
"イベントは投稿ですが、イベントの開始日/終了日!= post date。クエリを作成するときは、ポストクエリではなくイベントクエリを実行する必要があります。つまり、プラグインのAPIを使用してイベントを取得する必要がありますapp/helper/class-ai1ec-calendar-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();
あなたはまた、開始時間のための引数を持つ関数のget_events_relative_toを()を使用することができ、結果の数の制限、(WPのページネーションと同じではありませんai1ecのために自分の意見に使用されている)ページオフセット、フィルター...イベントオブジェクトの多次元配列を返します。 $ events = $ get_events ['events']を作成し、foreach内で$イベントを使用してpost_idsを適切に取得する必要がありました。
イベントデータを表示する方法の例を見つけるために、ai1ecテーマを調べました。
echo apply_filters('the_content', $event->post->post_content);
単一のイベントページに表示されるHTML形式のイベント情報を返します。
私はそのコードを使ってみました。イベントは正しい時間枠に表示されていますが、間違った開始時刻順に表示されています(ただし、post dateの順番に表示されます) – Rosencruez