Contact Form 7をそのまま利用していると、カレンダーから選択した日付は「2023/10/17」、もしくは「2023-10-17」という形式になります。
この形式のまま自動送信メールに[date your-date] のように設定していると、当然その部分は2023/10/17 と入力されてメールが送信されるのですが、このときにメールのみ2023年10月17日という形式にするにはどのようにすればよいか、というのが今回の解説となります。
Contact Form 7はメールの日付形式をフォーマットできる
参考サイト: 日付項目
独自のカスタムプラグインや、Contact Form 7のjsファイルをいじる必要があるのかな、と思っていたのですが、どうやら純正の機能でこれを再現できるようです。
例:
[_format_your-date “D, d M y”]
https://contactform7.com/ja/date-field/
上の例に見られる D、d、M、y といった文字は PHP の date 関数のマニュアルページに記載されている日付フォーマット文字です。”D, d M y” は 2013-04-08 を Mon, 08 Apr 13 としてフォーマットします。このフォーマットはローカライズの影響を受けるので、同じ “D, d M y” のフォーマットを使っていても、日本語にローカライズされた WordPress では 2013-04-08 が 月, 08 4月 13 になります。
これをみると、下記の属性がフォーマット要素として利用できることがわかります。
D : 曜日、d : 日にち、M : 月、y : 年(後半の2桁)
これを考えると、例えば日付型の部分を [date your-date] を利用している場合、メールには [_format_your-date “20y年Md日(D)”] と記載することで、メールには「2023年10月17日(火)」と表示されます。
コメント