2012/6/9

WordPressでContact Form 7からのポストをカスタム投稿タイプに下書き保存する その2

さっきの続きです。実は先程の話もAll in One Event Calendarのイベント管理の話だったのですが、イベントの日付情報とか独自のテーブルにあるんですよね。こういう時にはSQL。

global $wpdb;
$event['post_id'] = $id;

$eventに格納していきます。

if(($ftime) == 2) {
  $event['start'] = strtotime($fyear.'-'.$fmonth.'-'.$fday.' '.$fstart.':00:00 JST');
  $event['end']  = strtotime($fyear.'-'.$fmonth.'-'.$fday.' '.$fend.':00:00 JST');
  $event['allday'] = '';
} elseif($ftime == 1) {
  $event['start'] = strtotime($fyear.'-'.$fmonth.'-'.$fday.' 00:00:00 JST');
  $event['end']  = strtotime($fyear.'-'.$fmonth.'-'.$fday.' 00:00:00 JST');
  $event['allday'] = 1;
}

切り分けてるのは全日のイベントかそうじゃないかですね。

$wpdb->query(
  $wpdb->prepare(
    "INSERT INTO {$wpdb->prefix}ai1ec_events" .
    "(post_id, start, end, allday) " .
    "VALUES ( %d, FROM_UNIXTIME(%d), FROM_UNIXTIME(%d), %d )",
    $event
  )
);

$wpdb->insertって言うのでやろうかと思ったのですが、こっちの方がわかりやすいなあと。

これでばっちり、Contact Form 7で日付入力すると、All in One Event Calendarのテーブルにイベントの日付情報が反映されます。良かったー。

加藤 康祐 / 企画・設計

プランナー、デザイナー。加藤康祐企画設計代表。Webデザインを入り口に、2005年よりフリーランスとしてのキャリアスタート。主な仕事としてベンチャー企業でのサービスのUXデザイン、独法との防災メディアの運営、社会的養護の子どもたちの自立を支援するNPOのサポート。ラグビーと料理、最近イラスト。

加藤康祐企画設計

是非、フォローしてください!
Twitter / Instagram

(2012-10-5)
売り上げランキング: 14,705
100円