[WordPress] 記事が更新された回数を取得する
スポンサーリンク
WordPressでリビジョンの数――、記事が更新された回数を取得するコードを用意しました。
どういう時に必要になるのか分かりにくいでしょうが、固定ページとして提供されているが、1ヶ月に1度定期的に更新されるページなどで、最終更新日だけでなく、それまでに更新が行われた回数、通算の修正回数を表示するといった用途などに使います。
WordPressにおいては、あらゆるノウハウがネット上で提供されているわけですが、記事が更新された回数を取得する方法が見つからなかったので自分で用意した次第です。そもそもそんなことを求めている人は皆無だったのだと思われますが、諸事情で必要になったのですね。
コード自体は簡単なもので、post_idを元に集計を行うSQLクエリーを実行するだけです。まず、functions.phpに以下のコードを記載します。
/** * リビジョン数を取得する */ function get_revision_count_by_id ($post_id) { if ( get_the_date('Y-m-d H:i:s') === get_the_modified_date('Y-m-d H:i:s') ) { return '0'; } else { global $wpdb; $query = "SELECT COUNT(ID) AS cnt FROM {$wpdb->posts} WHERE post_name = '{$post_id}-revision-v1';"; $cnt = $wpdb->get_var($query); return $cnt - 1; } }
次に更新回数を表示したいところget_revision_count_by_id ($post_id)
を記載し、引数には$post_id
(記事ID)を渡します。これで記事の更新回数を表示できるようになります。
スポンサーリンク
WordPressカテゴリーの投稿
- [WordPress] ダッシュボードのウィジェットを表示オプションを使わずに非表示化する
- [WordPress] 関連記事をカテゴリーに基づきアイキャッチ画像つきで表示
- [WordPress] バックアッププラグインの特徴と機能比較
- [WordPress] タグ版wp_list_categories
- [WordPress] have_comments()がFALSEを返しコメントが表示されない現象
- [WordPress] 個別記事ページでカテゴリーを表示するときの目的別の方法
- [PHP] 文字長がnバイト以下になるまで末尾の文字を1字づつカット
- [WordPress] wp_insert_post()でhtmlタグが除去されるのを防ぐ
- [WordPress] カテゴリー・タグ・カスタムタクソノミーを外部から登録・編集する
- [WordPress] カスタムフィールドで一つのキーに複数の値を保存