web-dev-qa-db-ja.com

高度なカスタムフィールド:日付選択の開始日をカスタマイズする(1500年以降を選択する必要があります)

高度なカスタムフィールドで、日付ピッカーをカスタマイズして、理想的には1500年代/ 1600年代の年しか選択できず、少なくとも日付ピッカーが1500年代に戻れるようにすることができます。現時点では19にしかなりません。

これをどのように実装するのか、誰かが知っていますか?

1
Larry B

あなたはプラグインをカスタマイズすることによってこれを行うことができます。

timepicker.jsの中で/wp-content/plugins/acf-field-date-time-picker/js/timepicker.jsを見つけたいでしょう。

そして21行目を変更します。

, yearRange: "-100:+100"

あなたの好みの範囲に、例えば:

, yearRange: "-500:+100"

これにより、ドロップダウンが表示され、デフォルトでは、現在の年から500年後に100年前に戻ります。

または、特定のニーズに合わせて、このように特定の範囲をハードコードすることもできます。

, yearRange: "1500:1699"

プラグインが更新されればもちろんこれらは上書きされますが、それはあなたの現在の問題への迅速な修正です。

デフォルトでは、コードブロック全体は次のようになります。

input.addClass('active').attr("placeholder", (is_timeonly) ? time_format : date_format + ' ' + time_format).datetimepicker({
changeYear: true
, yearRange: "-100:+100"
, changeMonth: true             
, timeOnly: is_timeonly
, timeFormat: time_format
, dateFormat: date_format
, showWeek: (input.attr('data-show_week_number') != "true") ? 0 : 1
, ampm: has_ampm
, controlType: input.attr('data-picker')
, timeOnlyTitle: input.attr('title')
, monthNames: timepicker_objectL10n.monthNames
, monthNamesShort: timepicker_objectL10n.monthNamesShort
, dayNames: timepicker_objectL10n.dayNames
, dayNamesShort: timepicker_objectL10n.dayNamesShort
, dayNamesMin: timepicker_objectL10n.dayNamesMin
, firstDay: timepicker_objectL10n.firstDay
});
2
Matias Vad