Events Managerでは、カスタム投稿として wp_posts テーブルに入ってる情報と、その投稿と紐づく wp_em_events 内のイベント情報や、 wp_em_tickets に入っているチケット情報など、いくつかの独自のテーブルにデータが保存してある。
これらをテーマに組み込んで呼び出したい時のサンプルコード。
この記事の目次
イベント情報の取得 (wp_em_events)
wp_em_eventsのテーブルにイベントIDや、開始日時、終了日時などが入ってます。
$event = new EM_Event( $post );
チケット情報の取得
$event = new EM_Event( $post ); $tickets = $event->get_tickets();
チケットは配列で返ってきます。
以下、テーマを作る時に書いたやつ
カスタム投稿側のイベントIDから1番最初のチケット情報を取ってくる
function get_first_ticket_from_post( $post ){ global $post; $event = new EM_Event( $post ); $tickets = $event->get_tickets(); $first_ticket = ( count($tickets->tickets) > 0 )? current($tickets->tickets) : null ; return $first_ticket; }
カスタム投稿側のイベントIDから1番最初のチケットの金額を取ってくる
// カスタム投稿側のイベントIDから1番最初のチケットの金額を取ってくる function get_first_ticket_price( $post ){ $return = null; $first_ticket = get_first_ticket_from_post( $post ); if( $first_ticket !== null ){ if( (int)$first_ticket->ticket_price !== 0 ){ $return = floor($first_ticket->ticket_price); }else { $return = '無料'; } } return $return; }