2013年10月04日 WordPressphp

ブログの記事が古い場合に「この記事は古いから注意してね〜」みたいなお知らせが表示されるサイトをたまに見かけませんか?

このサイトも賞味期限切れの記事がありそうな気配がムンムンしてきたので、半年以上前の記事は古くなってますよ〜って表示しようと思い、調べてみました。

実装したコード

<?php
 
function day_diff($date1, $date2) {
 
    // 日付をUNIXタイムスタンプに変換
    $timestamp1 = strtotime($date1);
    $timestamp2 = strtotime($date2);
 
    // 何秒離れているかを計算
    $seconddiff = abs($timestamp2 - $timestamp1);
 
    // 日数に変換
    $daydiff = $seconddiff / (60 * 60 * 24);
 
    // 戻り値
    return $daydiff;
 
}

//本日の日付を取得
$today = date("Y-m-d");

//表示中の記事の投稿日取得
$posted = get_the_date('Y-m-d');
 
// 日付を関数に渡す
$day = day_diff($today, $posted);
 
?>

コード内に説明が入っているので、特に解説する必要もないかもですが、一応、説明すると、day_diff関数は、2つの日付を比較して、日数の差を返します。参考サイト様から、そのまま拝借しています。(・・;)

date関数と、WordPressのget_the_date関数は、本日の日付、記事の投稿日をそれぞれ取得しています。

2つの日付を先ほどのday_diff関数に渡します。$dayには、経過日数が入ります。

$day = day_diff($today, $posted);

あとは、$dayをお好みに判別して、カスタマイズしてみてください。 当サイトでは、$dayが180を超えてたら、大体半年は過ぎているということで、以下みたいな感じで使っています。

<?php
//180日を過ぎている場合
if($day > 180){ ?>
<p>閲覧中の記事は半年以上前の記事ですので、内容が古くなっている可能性がありますよ〜。</p>
<?php } ?>
参考サイト:http://raining.bear-life.com/php/指定した二つの日付の差を調べる方法

この投稿へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

CAPTCHA


ピックアップ記事

自動整形&タグ除去回避

2011年11月21日 WordPress
PS Disable Auto Formatting WordPressによる、自動整形、タグ除去などを無効にするプラグイン
「自動整形&タグ除去回避」をはてなブックマークに追加

wordpressのアーカイブ、カテゴリテンプレートで現在のタグIDを取得しリンクを設定する

2014年08月04日 web関連WordPress
アーカイブテンプレートで表示中のタグIDを取得する 下記で現在表示中のタグのtag_idが取得出来ます。 [php]$tag_id = get_query_var('tag_id');[/php] tag_idからタグページヘのリンクを設定する タグページヘのリンクを設定するには、WordPressのget_tag_link関数を使います。引数に先ほど取得したtag_idを設定…
「wordpressのアーカイブ、カテゴリテンプレートで現在のタグIDを取得しリンクを設定する」をはてなブックマークに追加

カテゴリIDからカテゴリ名またはスラッグを取得する

2012年01月24日 WordPress
<?php //カテゴリIDからカテゴリ情報取得 $category = get_category('123'); //カテゴリ名表示 echo $category->cat_name; //スラッグ名表示 echo $category->slug; ?> …
「カテゴリIDからカテゴリ名またはスラッグを取得する」をはてなブックマークに追加

【無料】IPから国番号、組織情報、位置情報などを取得可能なサービス

2022年10月26日 php
使い方 ip2location.io 使い方は簡単で、上記サイトに無料アカウント登録し、API KEYを取得します。 API KEYと情報を取得したいIPをパラメータに設定して、 以下のURLにアクセスすれば、情報が取得できます。 [php]https://api.ip2location.io/?ip=218.42.223.17&key=【API KEY】&ip=【IP】…
「【無料】IPから国番号、組織情報、位置情報などを取得可能なサービス」をはてなブックマークに追加

PHP 表示中のURLを取得

2011年07月25日 php
PHPで、表示中のURLのクエリまで全て取得したい場合に有効な方法です。 単純にドメインやindex.phpなどの実行ファイル名までであれば、以下のようにすれば取得できます。 …
「PHP 表示中のURLを取得」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy