勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

WordPressで翌日以降に編集した記事のみ最終更新日を表示する方法

  WordPress CMS

WordPressで翌日以降に編集した記事のみ最終更新日を表示させたい。逆に言うと当日に編集した場合は最終更新日は表示させたくない。というのも記事公開後にページチェックした際、誤字脱字とかが見つかり公開後すぐに編集することがある。その場合公開日と最終更新日が同じ日付で表示されるというのを避けたい。以下に対応方法をメモ。

 

ソースコード

functions.php

//最終更新日の取得
function get_mtime($format) {
    $mtime = get_the_modified_time('Ymd');
    $ptime = get_the_time('Ymd');
    if ($ptime > $mtime) {
        return get_the_time($format);
    } elseif ($ptime === $mtime) {
        return null;
    } else {
        return get_the_modified_time($format);
    }
}

最終更新日を表示するページ(single.php等)

<?php $regist_ymd = get_the_time('Y/m/d'); //公開日?>
<?php $update_ymd = get_mtime('Y/m/d'); //最終更新日?>
<?php if( $update_ymd && $regist_ymd != $update_ymd ){ //最終更新日が存在して公開日と最終更新日が異なる場合?>
    <i class="fa fa-repeat"></i>&nbsp;<?php echo $update_ymd;?>
<?php } ?>

 

リファレンス

get_the_time

https://developer.wordpress.org/reference/functions/get_the_time/

get_the_modified_time

https://developer.wordpress.org/reference/functions/get_the_modified_time/

 - WordPress CMS

  関連記事

WordPressで複数のカテゴリーを取得する方法(get_the_category_list)

WordPressで1つの記事に対して複数カテゴリを設定していた場合、テーマによ ...

XML-RPCライブラリを利用してWordPressを外部サーバから投稿する方法

WordPressをダッシュボードからではなく、外部サーバのプログラムから投稿し ...

WordPressのメディアライブラリで「画像を編集」をクリックしても画像が表示されない(編集できない)場合の対応方法

WordPressのメディアライブラリで「画像を編集」をクリックしても画像が表示 ...

WordPressでユーザー毎にフラグを持たせ分岐処理を行う方法

WordPressでユーザー毎に何らかのフラグを持たせて、フラグによって分岐処理 ...

youtubeの検索結果をWordPressに自動投稿する方法

youtubeから特定のキーワードで検索した動画をWordPressに自動で投稿 ...