生年月日から年齢計算をするWordPressショートコード作る方法

WordPressの基本

サイトで人の年齢を自動で最新の状態にして表示するショートコードを作成してみました。

サイトを作成する際に自分のプロフィールや、芸能人や有名人のプロフィールなどを書く際に年齢を固定で書いたりしていると、誕生日が来るたびに記事を修正しなくてはならず大変です。

今回はそんな時のためにPHPでちょっとしたコードを書いてWordPressのショートコードを入力しておくと自動で記事が表示された時点での年齢が表示されるようにします。

生年月日から年齢計算をするWordPressショートコード作る方法

PHPで生年月日から今日時点の年齢を求めるのはむずかしくありません。数行のコードでできます。

今回は一歩進んで、そのコートをWordPressのショートコードにして簡単に使えるようにします。

年齢計算処理をショートコードに追加する

実際の年齢計算は以下のようなコードになります。

function getAge($birthday)
{
    extract(shortcode_atts(array(
        'birthday' => date('Ymd'),
    ), $birthday));

    $now = date('Ymd') ;
    return floor(($now-$birthday)/10000);
}
add_shortcode('age', 'getAge');

上記のコードを「function.php」に追加します。

注意
function.phpを修正する際は必ずバックアップを取ってから作業するようにしてください。
安全に「function.php」にコードを追加するには「Code Snippets」プラグインが便利です。
WordPressプラグインfunction.phpを編集なしでコード追加するCode Snippetsの使い方

関数「getAge」で引数で渡された生年月日から年齢を求めています。
add_shortcodeはWordPressの関数で「getAge」を「age」というショートコードで呼び出せるようにしています。
extractは引数が渡されなかった時に今日の日付で処理をするようにしています。

このショートコードには「birthday」という名前で生年月日を「yyyymmdd」という形で渡して呼び出します。

[age birthday='19990401'](※実際は半角の括弧で括ってください。)

これで思ったところにショートコードを埋め込むとリアルタイムに年齢が計算され表示されます。

桐谷美玲さんの年齢は28歳です。
中条あやみさんの年齢は21歳です。
羽生結弦さんの年齢は23歳です。
ディーンフジオカさんの年齢は38歳です。
ドラえもんの年齢は-94歳です。(未来なのでマイナスです)
磯野波平さんの年齢は123歳です。(1895年9月14日生まれ)
フグ田サザエさんの年齢は95歳です。(1922年11月22日生まれ)
磯野カツオさんの年齢は80歳です。(1938年3月11日生まれ)
磯野ワカメさんの年齢は76歳です。(1942年6月15日生まれ)
野原しんのすけさんの年齢は31歳です。(1987年5月5日生まれ)

まとめ

コード的には非常に簡単ですし、いったんショートコードとして登録しておくと色んな箇所で使えるのでとても便利です。

注意
function.phpを修正する際は必ずバックアップを取ってから作業するようにしてください。
安全に「function.php」にコードを追加するには「Code Snippets」プラグインが便利です。
WordPressプラグインfunction.phpを編集なしでコード追加するCode Snippetsの使い方

以上、「生年月日から年齢計算をするWordPressショートコード作る方法」でした。