drupal 8のデフォルトの日付形式はd.m.Yですが、d-M-Yにしたいです。
私が試してみました
#format => 'd-m-Y'
#date_format => 'd-m-Y'
My date field
$form['start_date'] = [
'#type' => 'datetime',
'#title' => t('Start Date'),
'#date_format' => 'd-m-Y',
'#description' => date($date_format, time()),
'#default_value' => time()
];
しかし、どれもうまくいきませんでした。
Drupal 8では、日付形式と時刻形式が分離されています。この値は個別に設定する必要があります。
これは、コンテンツタイプに新しいcckフィールドを作成し、フォームの変更から印刷することでわかりました。
$date_format = 'Y-m-d'; $time_format = 'H:i';
$form['start_date'] = [
'#type' => 'datetime',
'#title' => t('Start Date'),
'#date_date_format' => $date_format,
'#date_time_format' => $time_format,
'#description' => date($date_format, time()),
'#default_value' => Drupal\Core\Datetime\DrupalDateTime::createFromTimestamp(time())
];