「WordPressで投稿日時が分かるようにしたい」と考えていませんか。日付などの日時があることで、記事の新しさや投稿順などが分かり、情報を整理しやすくなると感じる人は多いでしょう。
今回は投稿日時をはっきりさせたいという人のために、記事などの更新した日時を取得する方法をまとめました。日付の形式をチェンジするやり方なども添えているので、時間のカスタマイズを学ぶうえで参考になるでしょう。
WordPress (ワードプレス)で投稿の日付を取得する方法
the_time
投稿日時は、the_timeを使うことで記事のループ中に出せます。ループとはWordPressで作った記事が、サイトで繰り返し見られるようにするためのコード記述方法です。
the_timeはWordPressで投稿日時を得るための基礎的な要素なので、初心者は必ず確かめておきましょう。コードは以下のとおりです。
?php the_time(‘Y.n.j’); //2020.8.24 ?
get_post_time
get_post_timeは、the_timeと同じくWordPressにおける投稿日時のテンプレートタグです。the_timeが日本語表示なのに対し、ger_post_timeは英語表記なので、日本在住の外国人向けに使うとよいでしょう。以下のコードで日時を出せます。
?php echo get_post_time(‘M j, Y’); //April 15, 2019 ?
get_the_date()
get_the_date()は記事内に投稿日時を示すためのタグです。ただしこのタグ単体での出力はできないので、「echo」とセットで使いましょう。変数などに渡せば日付をもとに、処理を分けることも可能です。
文字列で日付を指定できるフォーマットと、特定の投稿記事だけに設定した日付を出せる投稿IDという2つのパラメーターを使い分けられます。
get_the_date(フォーマットか投稿ID)
WordPress (ワードプレス)の投稿の最新更新日を取得する方法
the_modified_date
the_modified_dateは最終更新日の日時を示すものです。一度投稿した記事でも修正や追加情報などを入れることがあるでしょう。記事の手直しがあった証拠を残すために、the_modified_dateを使って最終更新の日時を示せます。
the_timeと同様、記事のループ内で採用可能なので、プログラミング知識がそれほどなくても使いやすいでしょう。コードは以下のとおりです。
?php the_modified_date(‘Y.n.j H:i’) //2019.10.15 12:25 ?
現在時刻を取得する
現在時刻をサイトに表示したいなら以下のコードを使いましょう。
?php date_default_timezone_set(‘Asia/Tokyo’); //タイムゾーン指定 ?
?php echo date( ‘Y.n.j H:i’ ); //2019.11.30 11:18 ?
こちらはWordPressのテンプレートタグではないため、ループ以外でも使えます。ただしタイムゾーンを日本に指定しないと、外国の時刻が表示され、読者を混乱させてしまうかもしれないので注意しましょう。
WordPress (ワードプレス)の日付の形式を変更する方法
管理画面からフォーマットを変更する場合
管理画面にて「設定」をクリックし、日付のフォーマットへ向かいます。時刻の表示方法が並んでいるので、希望のところにチェックを入れてください。画像では「○年○月○日」という形式を選んでいます。
外国向けに西暦ではなく、月や日が頭についているものを選んだり、カスタムでオリジナルの日時の表現方法を出したりも可能です。管理画面で決めた日付は、以下のコードでフォーマットを取れます。
?php
$format = get_option( ‘date_format’ );
?
関数で直接フォーマットを指定する場合
the_time()やget_the_date()などは、フォーマットを直接関数に指定できます。
get_the_date( $format, $post_id )
以上のコードで投稿日時を取得できます。「$format」で文字列を使って日付のフォーマットを決められます。初期は管理画面で設定したタイプですが、いつでもカスタマイズ可能です。
$post_idは日時を出す対象にする投稿記事のIDです。指定がなければ編集時点で投稿した記事に日時がつきます。
以下のコードを使えば、任意形式による日時の表示が可能です。
?php echo get_the_date( ‘F’ ); ?
こちらは英語環境において「January」のような月だけを出します。
?php echo get_the_date( ‘F d, Y’ ); ?
この場合は月だけでなく、「January,18,2020」というように正確な日付を出力します。「the_date( $format )」を使ったときは記事に一度しか表示されません。
WordPress (ワードプレス)での日付と時刻の書式とは
日
日付と時刻の表し方は以下のとおりです。
表示 | d | j | S |
意味 | 日 | 日 | 英語序数jとセットで使える |
対象 | 01~31で、先頭のゼロも含め必ず2ケタ | 1~31で、先頭にゼロはつけない | 1stや2nd、15thなどにある小文字2文字 |
曜日
曜日は以下のように、フルスペルか3文字の略語かを選べます。
表示 | l | D |
意味 | 英語フルスペルの小文字で表す | 英語で3文字の略語 |
対象 | Sunday、Monday、Tuesdayなど | Sun、Mon、Tueなど |
月
月は先頭にゼロをつけるかつけないか、フルスペル、3文字の略語から指定可能です。
表示 | m | n | F | M |
意味 | 先頭のゼロを含め、必ず2ケタで表現する数字 | 先頭にゼロをつけない数字 | 英語フルスペル | 英語で3文字の略語 |
対象 | 01~12 | 1~12 | JanuaryやFebruaryなど | JanやFebなど |
年
年は西暦で示します。「令和○年」のように和暦では表せないので注意しましょう。
表示 | Y | y |
意味 | 4ケタ | 下2ケタ |
対象 | 2020のような形 | 20のような形 |
時刻
時刻は午前や午後、時間の単位などを正確に設定できます。
表示 | a | A | g | h | G | H | i | s | T |
意味 | 小文字で午前または午後 | 大文字で午前または午後 | 12時間単位の時で、先頭のゼロをつけない | 12時間単位の時で、先頭のゼロを含め必ず2ケタ | 24時間単位の時で、先頭のゼロをつけない | 24時間単位の時で、先頭のゼロを含め必ず2ケタ | 分。先頭のゼロを含め必ず2ケタ | 秒。先頭のゼロを含め必ず2ケタ | タイムゾーン |
対象 | amまたはpm | AMまたはPM | 1~12 | 01~12 | 0~23 | 00~23 | 00~59 | 00~59 | ESTやMDTなど |
タイムゾーン
タイムゾーンまで示したいなら、以下の文字を使いましょう。
表示 | e | I | O | P | T | Z |
意味 | タイムゾーン識別子 | 大文字のiで表す。サマータイム中かどうかを示す | グリニッジ標準時 (GMT)との時差。先頭にゼロがつくこともある | グリニッジ標準時 (GMT)との時差。時間と分の間にコロン | タイムゾーンの略称 | タイムゾーンにおけるオフセット秒数。UTCにおいて西側は常に負、東側は正 |
対象 | UTC、Atlantic/Azoresなど | 1ならサマータイム、0なら平時 | +0300 | +03:00 | ESTやMDTなど | -43200~50400 |
WordPress (ワードプレス) で投稿の日付を取得する方法まとめ
WordPressで作ったページや記事に更新の日時があれば、自身で時系列に従って情報を整理できるだけでなく、読者にとっても記事の新しさが分かって便利です。今回の記事で紹介した時間の表現方法を使って、投稿日時をアピールしましょう。
記事の新規完成だけでなく、追加情報や修正に合わせて、最終更新日まで設定できれば正確に投稿のタイミングを知らせられます。