WordPressのショートコードで誕生日から現在の年齢を表示させる

Ads

現在の案件でご要望いただいたので方法をメモ。ショートコードで現在の年齢を表示させる、という方法です。確かに毎年更新するのは面倒な部分ではありますので自動化出来ると楽ですかね。

WordPressで、ショートコードで誕生日を書くと年齢が表示される、というのを作ります。

コード

function my_age($birthday) {
  extract( shortcode_atts( array(
    'birthday' => 'birthday'
  ), $birthday));
  return (int) ((date('Ymd')-$birthday)/10000);
}

add_shortcode('my-age', 'my_age');

これで、以下の表記で年齢が表示される。

わたしは[my-age birthday=”19790214″]歳です

1979年の2月14日生まれの場合の書き方です。

実装

以下を参考にしましたが、注意も必要との事ですので追記も合わせてご確認下さい。プロフィール欄に使う、との事でしたのでこの方法にしましたが、重大なコンテンツの場合は別の方法も検討されたほうが良いかと思います。

via:生年月日から年齢を計算する簡単な計算式