【PHP】1週間おきに、HTMLを切り換えるスクリプトです。ご自由にどうぞ

【PHP】1週間おきに、HTMLを切り換えるスクリプトです。ご自由にどうぞ

記事
IT・テクノロジー
最近、chat GPTさんに
SEOもできる変態CSSフロントエンドおっちゃん(PHP対応)
呼ばわりされております(^^;)

では、タイトルの本題に参ります。

PHPで偶数日・奇数日での切り替えや、偶数月・奇数月での切り替えは、検索すればすぐに出てきますし、自作するのは簡単だと思います。

ただ、「1週間おきに表示を切り替える処理」というのは意外と見つからなかったので、色々と知恵を振り絞って自作してみました。
解説込みでソースをご紹介します。

・・・10年以上前に作ったコードなので、多少古臭いかもしれませんが
(^^;)

 ■1週間おきに、HTMLを切り換えるPHP

【PHP】 
<?php
    $startTIME = mktime(0,0,0, 3,6,2026);
//登録する日付(2026年3月6日)を入力(この日が起点となります。)
    $aweek = ((int)( ( time() - $startTIME ) / 86400 )) % 14; //現在時刻から登録日付の差を、14日で割った余りを算出
    if( $aweek >= 0 && $aweek < 7 ): //算出した余りが、0以上7未満だった場合は①を表示、そうでない場合は②を表示 ?>
    ~①表示させたいHTML~
<?php else: ?>
    ~②表示させたいHTML~
<?php endif; ?>

■PHPの解説

1週間ごとに表示を切り替える場合、
・1週目 → パターン①
・2週目 → パターン②
・3週目 → パターン①
・4週目 → パターン②
という2週間周期になります。

なので、登録日からの差分を14日で割った余り(「/」は割り算(除算)。演算子「%」は除算の余り)を出します。
(time関数は、数字を秒で返すので、86400で割ると1日単位の数字になります。)
14で割った余りは、
・0~6 → 前半の1週間
・7~13 → 後半の1週間
になります。
これで、登録日からの1週間おきに切り換える仕組みができます。
※10日おきに切り換えだったら、
% 14 → % 20 に変更、
$aweek < 7 → $aweek < 10 に変更
すれば良いだけです。

このコードはご自由にコピペ・改造してお使いください。

「○日ごとに切り替えたい」
「曜日ごとに表示を変えたい」
「WordPressに組み込みたい」
といったカスタマイズのご相談も承っておりますので、お気軽にご相談ください。

※お気に入りに登録してくださった方に、20%引きのクーポンを配布いたします! まずは「お気に入り登録」をお願いいたしますm(_ _)m




サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す