【WordPress】コピペでOK!生年月日から自動で年齢を計算・表示するショートコードをご紹介!

ようこそヒケナンブログへ♪
WordPressをお使いの方で人物紹介の記事を書く際、年齢を記載している方も多いと思います。
その年齢が自動的に更新されると便利だと思いませんか?
今回は私が自作した生年月日から自動で年齢を計算表示するショートコードをご紹介します。
コピペするだけですぐ使えますので便利ですよ!

免責事項このショートコードの使用を起因とするあらゆる問題やトラブル等について
筆者は一切責任を負いかねます。
そのため、当ショートコードの使用は自己責任でお願いします。
あらかじめご了承ください。
【WordPress】コピペでOK!生年月日から自動で年齢を計算するショートコードをご紹介!
生年月日から自動で年齢を計算表示するコード
こちらが生年月日から自動で年齢を計算表示するコードです。
こちらを「function.php」にコピペするだけで、すぐ使用することができます。
また、当コードから独自にカスタマイズされても問題ありません!
※function.phpについては使用するテンプレートのリファレンスをご確認ください。
function nenrei_scode($atts) {
extract(shortcode_atts(array(
'year' => '',
'month' => '',
'day' => '',
'unit' => '歳',
), $atts));
$base = new DateTime();
$today = $base->format('Ymd');
// 年が0より小さい場合は0年とみなす
if($year < 0){
$year = 0;
}
// 月が1月から12月以外の場合は1月とみなす
if($month < 0 || $month > 12){
$month = 1;
}
// 日が1日から31日以外の場合は1日とみなす
if($day < 0 || $day > 31){
$day = 1;
}
$birth = new DateTime($year . '-' . $month . '-' . $day);
$birthday = $birth->format('Ymd');
$age = (int) (($today - $birthday) / 10000);
// 未来の日付が指定された場合は年齢がマイナスになるため0歳とみなす
if($age < 0){
$age = 0;
}
return $age . $unit;
}
add_shortcode('nenrei', 'nenrei_scode');
使用例
例1)生年月日が「1978年2月1日」の場合
[nenrei year=1978 month=2 day=1]
「48歳」と表示されます
例2)「○年間経過しています」と経過年数を正確に表示したい場合
[nenrei year=1980 month=6 day=1 unit=年間]
「45年間経過しています」と表示されます
ショートコードの引数
- year 年を指定します。※必須
- month 月を指定します。※必須
- day 日を指定します。※必須
- unit 年齢の後に表示する文字を指定します。何も指定しない場合は「歳」が自動で表示されます。
注意点
このショートコードは、以下の注意点があります。
- 未来の日付を指定した場合は「0歳」という風に表示されます。(マイナス表示にはならない)
- 月の指定が1~12月以外の場合は「1月」となります。
- 日の指定が1~31日以外の場合は「1日」となります。
- 2021年2月30日や2021年6月31日など、その月の最大日数を超えて指定をした場合は、超えた日数分翌月にズレます。
例)2021年2月30日 → 2021年3月2日、2021年6月31日 → 2021年7月1日
最後に
いかがでしょうか。
せっかくWordPressを利用しているのならば、このようなショートコードを利用してかっこよくサイトを運営していきたいですよね!
よかったら、こちらのショートコードを使ってもらい、楽に年齢表示ができればと思います!

沖縄生まれ、沖縄育ちの純うちなーんちゅの30代男性会社員、二児の父です。
沖縄に関することや体験談、私や家族が気になったことなどをブログで発信しています。
