PHP を使ってサイトの 著作権表示 (コピーライト) の年を自動で更新したいとき、よく用いられるのが以下のようなコードです:
© 2001–<?php echo date('Y'); ?> Example.com
このコードが埋め込まれたページを 2010 年に見た場合、© 2001–2010 Example.com と出力されます。
これは 2001 年に公開されたサイトの例ですが、ではこれから新しく公開するサイトの場合はどうでしょうか。上記の書式をそのまま当てはめると、たとえば 2010 年に公開されたサイトを同じ年に見た場合、出力結果は © 2010–2010 というおかしなことになってしまいます。
そこで、2010 年の間は © 2010 と表示されて、2011 年になったところで © 2010–2011 と更新されるようにしてみます:
© <?php
$then = 2010; // サイトの公開年
$now = date('Y');
if ($then < $now) {
echo $then.'–'.$now;
} else {
echo $then;
}
?> Example.com
サイトの公開年 ($then
) と現在の年 ($now
) を比較して出力を分岐させるわけです。もし WordPress なら、以下のように関数を functions.php
に書いておいてもいいかもしれません:
function get_copyright_date ($then) {
$now = date('Y');
if ($then < $now) {
return $then.'–'.$now;
} else {
return $then;
}
}
WordPress テンプレート内で公開年を引数にして使います:
© <?php echo get_copyright_date(2010); ?> Example.com
著作権表示自体の是非はさておき。