プロが教える店舗&オフィスのセキュリティ対策術

WordPressを運用していて、記事内でPHP if文を使って条件分岐をしたいです。

WordPressにて提供されている記事の投稿日を参照して、記事投稿○日以前、以降で表示を切り替えたいです。
あまり詳しくないのですが、取り敢えず下記のようにしてみましたが、動きません。。

if( the_time('Ymd') <= date('Ymd', strtotime("-3 days")) ){
   print "前の表示";
}else{
   print "先の表示";
}

PHP内にWordPressの関数が使えないのかな。とも思っていますが、PHP初心者の為調べ方も解らない状況です。
どなたかお分かりになる方、宜しくお願い致します。

A 回答 (1件)

うーん、書き方は間違えてるわけではないとおもうんだけどな。


とりあーえず、その2つが結果どうなってんのかを調べるのが良かろう。

var_dump(the_time('Ymd'));
var_dump(date('Ymd', strtotime("-3 days")));

if( the_time('Ymd') <= date('Ymd', strtotime("-3 days")) ){
   print "前の表示";
}else{
   print "先の表示";
}

とすると、the_timeとdateの結果どうなっているのかが分かるぞ。これが両方ともstringであれば問題ないが・・・・。

まぁさすがにWordPressの管理画面の記事投稿ページの本文にそう書いているなんて事はないと思うけど、こういう質問をする時に一番重要な事は、「取り敢えず下記のようにしてみましたが、IEでアクセスして表示してみたところ○○というような状況になります。」などと、具体的な結果を明記する事だな。
    • good
    • 0
この回答へのお礼

有難うございました。
遅くなってすいません。頂いた内容を元に、他サイト等でも調べて、下記のような感じで解決しました。

<?php
$days = 3; //Newを表示させたい期間の日数
$today = date_i18n('U');
$entry = get_the_time('U');
$kiji = date('U',($today - $entry)) / 86400 ;
if( $days > $kiji ){ ?>
※前の記事
<?php
}else{ ?>
※後の記事
<?php
}
?>

お礼日時:2014/10/03 18:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!