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番最初のチケット情報を取ってくる

// カスタム投稿側のイベント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;

}

 

 

https://github.com/wp-plugins/events-manager

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください