私は現在、ユーザーが私たちの施設のツアーを予約できる WordPress サイトをインストールしています (私たちは大学です)。ContactForm7 プラグインを使用して、訪問者が連絡先情報を入力できるフォームをページ内に作成し、日付ピッカー フィールドを使用してツアーに参加したい特定の日付を選択できるようにしました。
私の質問は (これに対する解決策を高低で検索しましたが、役に立ちませんでした) フォームのこの日付ピッカー フィールドで特定の日付が選択されないように無効化またはブロックする方法はありますか? たとえば、ツアーが利用できない日がいくつかあります (つまり、祝日やその他のツアー スタッフがキャンパスにいない日) ため、これらの日付を選択可能にしたくありません。
プラグイン内でこれを行う方法はありますか、またはスクリプトを使用しているか別のプラグインを使用しているかに関係なく、他の方法でそれを行うことができますか?
私の同僚は、ツアー予約フォーム (ただし、これは WordPress/ContactForm7 フォームではありません) で jQuery/JS 日付ピッカー フィールドを使用するサイトを見せてくれました。ツアーが利用できない場合、特定の日付をブロックできるので、私は推測していますそれは可能なはずです...どういうわけか。
どんな助けでも大歓迎です!:)
編集:
私は以下のコードを見つけました.Webサイトは私が探していることを正確に実行するように聞こえます(以下の回答の1つに似た方法を使用しています)が、それを私のそれが機能するようにサイト。テーマの header.php ファイルに追加し、ID を「#DisabledDates」に設定しました。これは、フォームの datepicker フィールド ID にも設定したものです...しかし、 「unavailableDates」に設定した日付はまだ選択可能です...何かアイデアはありますか?
<?php if ($post->ID==16) { ?>
<script type="text/javascript">
var unavailableDates = ["9-5-2013", "10-5-2013", "11-5-2013", "12-5-2013", "13-5-2013", "14-5-2013", "15-5-2013", "16-5-2013", "17-5-2013", "18-5-2013", "19-5-2013", "20-5-2013", "21-5-2013", "22-5-2013", "23-5-2013", "24-5-2013"];
jQuery(function($){
$( "#DisabledDates" ).datepicker({
minDate: 5,
beforeShowDay: function(date) {
dmy = date.getDate() + "-" + (date.getMonth() + 1) + "-" + date.getFullYear();
if ($.inArray(dmy, unavailableDates) == -1) {
return [true, ""];
} else {
return [false, "", "Unavailable"];
}
}
});
});
</script>
これが私が見つけた場所です(datepickerがプラグインに追加される前に、datepickerフィールドでCF7を拡張するために存在していたプラグインのように見えます...しかし、それでも同様に機能するはずだと思いますか?):https://github. com/relu/contact-form-7-datepicker/issues/37