【WordPress】カスタムフィールドの日付と現在の日付を判定し、表示を切り替える条件分岐を作成

PHP

イベントの投稿ページを作る機会がありました。

開催日をカスタムフィールドで設定し投稿、そのカスタムフィールドをメールフォームに適応し、イベントの参加受付するというプログラムなのですが

そのまま使用すると、過去のイベントの受付が開放されたままでした。

この使用は、利用者に誤解を与えてしまいますし開催者も不要な手間をかけてしまう可能性があります。

ですので、設定した日付を超えると表示を切り替える条件分岐を作成しました。

使用しているカスタムフィールドのプラグインはSmart Custom Fieldsです。

実装したい方は続きをどうぞ

以下のPHPを貼り付け


		<?php
		// カスタムフィールドを取得する
		$event_date = get_post_meta($post->ID , '日付カスタムフィールド名' ,true);
		// 日付の文字列を変換する
		$event_date_time = date('Y/m/d', strtotime($event_date));
		// イベント当日を含めない
		// イベント当日を含める場合は、「>」を「>=」に変更
		if (date_i18n('Y/m/d') > $event_date_time) :
		?>
			ここに日付を超えた場合の記述
		   例:このイベントは終了しました。
		<?php elseif(date_i18n('Y/m/d') < $event_date_time): ?>
			ここに日付を超えていない場合の記述
		   例:参加受付中
		<?php endif ?>

この中にある


		$event_date = get_post_meta($post->ID , '日付カスタムフィールド名' ,true);

「日付カスタムフィールド名」を設定しているカスタムフィールド名に変更して下さい。

以上で終わりです。

これでライブやイベントを行う人には便利になったのではないでしょうか。

参考にしたサイト

カスタムフィールドを使った日付ごとの表示変更方法[WordPress]

コメント

タイトルとURLをコピーしました