1. TOP
  2. 技術メモ
  3. 【WP】カスタムフィールドの年月日を置き換えて日付の差分を計算

【WP】カスタムフィールドの年月日を置き換えて日付の差分を計算

技術メモ, WordPress

2022/08/24
【WP】カスタムフィールドの年月日を置き換えて日付の差分を計算

この記事は【2022年8月24日】が最後の更新のため、記事の内容が古い可能性があります。

ブログなどで「この記事は○年前の内容です」など表示されるのを見かけたことはありませんか?
技術や情報系の記事では、最新の情報では無いと現在では役に立たないこともあるので、閲覧者視点で考えた場合表示させると親切で良いですね。

ワードプレスでは、 human_time_diff()を使用して表示させることができます。

<?php echo human_time_diff( get_the_time('U'), current_time('timestamp') ) . '前に公開されました。'; ?>

最終更新日での表示はこんな感じです。

<?php echo human_time_diff( get_the_modified_time('U'), current_time('timestamp') ).'前にリライトしています。'; ?>

最終更新日があった場合のみ表示させるなら、このような形でできます。

<?php echo human_time_diff( get_the_time('U'), current_time('timestamp') ) . '前に公開されました。'; ?><br>
<?php if (get_the_modified_time('Y/m/d') != get_the_time('Y/m/d')) : ?>
<?php echo human_time_diff( get_the_modified_time('U'), current_time('timestamp') ).'前にリライトしています。'; ?>
<?php endif; ?>

今回は、カスタムフィールドで日付を「2022年8月24日」などテキストで登録している場合でも
日付の差分を求める方法をご紹介します。

まずは、str_replaceで、年月日を置き換えましょう。

$event_date = get_post_meta($post->ID , 'カスタムフィールドの値' ,true);
$event_date = str_replace('日', '', $event_date);
$event_date = str_replace('年', '-', $event_date);
$event_date = str_replace('月', '-', $event_date);

変更したら本日の日付を取得し日付の差分を計算します。

<?php
$event_date = get_post_meta($post->ID , 'カスタムフィールドの値' ,true);
$event_date = str_replace('日', '', $event_date);
$event_date = str_replace('年', '-', $event_date);
$event_date = str_replace('月', '-', $event_date);

$datetime1 = new DateTime(date('Y-m-d'));
$datetime2 = new DateTime(date($event_date));
$interval = $datetime1->diff($datetime2);
echo $interval->format('%y年前発売');
?>

例では、本日の日付から○年前って感じで表示させます。
「%a」で総日数を表示などいくつかオプションがあるので、表示させたい内容に変えてみてください。

PR

ニッチなテーマのイラスト素材を投稿中!ぜひご利用ください。

ナマケモノなど可愛いイラストをイラストACで無料配布中!

オリジナル絵本をKindleで出版!

ナマケモノのふにゃまるちゃんを読む

困ったときは格安で依頼!RU DESIGNも出品中

格安レンタルサーバーでサイト運営を始めよう

ドメイン取得は一括管理が便利!

応援・支援よろしくお願いします!サイト運営に活用させていただきます。

Braveクリエイターサポート
ホームページ制作ならRU DESIGN

関連記事

【WordPress初心者さん必見!】「これ、どうすればいいの?」検索しても意外と見つからない疑問を解決!
2025/04/19
WordPressでのサイト運営、始めてみましたか?✨ 最初は設定や記事の書き方など、覚えることがたくさんで大変ですよね!基本的な操作は色々なサイトで解説されて...
WordPressで「Missing a temporary folder」エラーを解決!ファイルがアップロードできない時の簡単な対処法
2025/04/19
WordPressで画像やプラグインをアップロードしようとしたら、「Missing a temporary folder」というエラーが出て、うまくアップロード...
WPFormsで「JavaScriptの問題を検出しました」メッセージが表示された時の原因と対処法
2025/04/19
WordPressサイトで人気の高いお問い合わせフォームプラグインの一つであるWPFormsを利用していると、サイトの管理画面や、実際にフォームが表示されている...
WordPressサイトの処理が止まる?「Maximum execution time exceeded」エラーの原因と対策
2025/04/18
WordPressサイトを運営していると、時々「Fatal error: Maximum execution time of XX seconds exceed...
WordPressで遭遇しやすい「原因が分かりにくい」エラーと解決策
2025/04/18
WordPressでウェブサイトを運用していると、予期しないエラーメッセージに遭遇することがあります。有名なエラー(例えば、白い画面だけが表示される「真っ白画面...