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


ピックアップ記事

何かうまくいかなかったようです。変更が保存されていないかもしれません。

2020年02月05日 WordPress
WordPressのテーマを編集中に以下のエラーが出て保存出来ない場合に考えられる対処法のメモ。 何かうまくいかなかったようです。変更が保存されていないかもしれません。手動で修正し、FTP 経由でファイルをアップロードすることもできます。 考えられる可能性 編集中のファイル内に何らかのエラーが含まれている可能性 いずれかのWPプラグインの影響 WAF設定の影響 …
「何かうまくいかなかったようです。変更が保存されていないかもしれません。」をはてなブックマークに追加

ZenCartのパンくずリストをトップページのみ非表示にする

2012年02月11日 zencartphp
変更する箇所 includes/classes/breadcrumb.php の60行目付近 [php] } else { $trail_string .= $this->_trail[$i]['title']; } [/php] 上記のコードを以下に変更します。 [php] } else { if ($this->…
「ZenCartのパンくずリストをトップページのみ非表示にする」をはてなブックマークに追加

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を取得しリンクを設定する」をはてなブックマークに追加

WordPressのWP-PageNaviが動かない場合の対処法

2012年02月04日 WordPress
WP-PageNaviは、WordPressでページングを可能にしてくれるプラグインですが、以下のように「query_posts」を指定していると、正常に動かないようです。 WP-PageNaviが正常に動かない例 [php]<?php if ( have_posts() ) : query_posts('cat=1&showposts=5' ); ?> [/php] 上記…
「WordPressのWP-PageNaviが動かない場合の対処法」をはてなブックマークに追加

wordpress アーカイブページで子カテゴリ記事を含まない、記事一覧を表示させる

2020年01月09日 WordPressphp
[php] <?php //子カテゴリ一覧を取得 $cat_child = get_term_children($category->cat_ID ,'category' ); //新規配列に表示させる親カテゴリと非表示の子カテゴリIDを追加 //非表示にするカテゴリはIDの前に「-」マイナスをつける $args_cat = array($category->…
「wordpress アーカイブページで子カテゴリ記事を含まない、記事一覧を表示させる」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy