WordPressで投稿日時を○日前と表示する方法


Twitterでおなじみの「○時間前」という投稿時間の表示方法を、WordPressで簡単に設定する方法があったのでご紹介。

投稿時間を表示させたい部分に、以下を使用するだけです。

human_time_diff(get_the_time('U'), current_time('timestamp')) . '前'

これで「○分前」「○時間前」「○日前」というふうに投稿時間を表示してくれます。「○週間前」「○ヵ月前」といった表示にはなりませんが、シンプルに「152日前」という表示でもいいかなと思っています。「○週間前」や「○ヵ月前」という表示は、よくよく考えると表示ルールが複雑になってしまいます。

たとえば8日前の場合、以下のような表現ができそうですが、どれもメリット/デメリットがありそうです。結局「○日前」がぱっと見て一番分かりやすいかなという結論に至りました。

  • 1週間と1日前
    → 文字でみるとまどろっこしい
  • 1週間以上前
    → 曖昧
  • 8日前
    → 日数が多くなったときに微妙

human_time_diff() 関数で、3つの表示方法を選べるようになってたら一番いいんですけどね。うるう年やら30日、31日の月への対応やらを考えてたら複雑なプログラムになってしまうので、そういった機能を実装するまでの価値はないという判断なのでしょうか?

関連する投稿

関連するカテゴリ・タグ

カテゴリ: WordPress関連
タグ:

Ads by Google