説明
wp_date() は、サイトのタイムゾーンで、日付を書式化して返す関数です。
基本構文
wp_date( string $format, int $timestamp = null, DateTimeZone $timezone = null ): string|false
引数
$format:日付の書式$timestamp:UNIXタイムスタンプ(省略すると現在)$timezone:タイムゾーン
戻り値
書式化した日付。
使い方(サンプル)
echo esc_html( wp_date( 'Y年n月j日 H:i' ) );
注意点
- PHPの
date()と違い、サイト設定のタイムゾーンが反映されます。 - 曜日の表示は、サイトの言語に合わせて翻訳されます。
実務での使いどころ
- タイムスタンプを、サイトのタイムゾーンで、書式を指定して表示するとき(WordPress 5.3以降)。
- 日本語の曜日や、月名を、含めて表示するとき。
よくあるミスと対処
- PHPの
date()を使っている。WordPress内では、UTC固定で出力され、サイトのタイムゾーン設定が反映されない。 - タイムスタンプに、タイムゾーンのずれを、足している。
wp_date()には、UTCのタイムスタンプを渡す。 - 書式の文字を、間違えている(
Y年n月j日など)。
NG例
echo date( 'Y年n月j日', $timestamp ); // WordPress内では、UTCで出力され、サイトのタイムゾーンにならない
OK例
echo esc_html( wp_date( 'Y年n月j日', $timestamp ) );
使い分け早見表
| 関数 | 特徴 |
|---|---|
wp_date() |
サイトのタイムゾーンで、整形する(推奨) |
date_i18n() |
翻訳つきで、整形する(従来の関数) |
current_time() |
現在の日時を、取得する |
関連項目
公式リファレンス:wp_date() | Function | WordPress Developer Resources

コメント