さんごちゃん
ぷれす先生
サイトのプロフィールなどで自分の年齢を書いたのはいいけど毎年更新するのは面倒だし忘れそうという人には「年齢を自動計算する処理」をショートコード化して登録し、それを利用することをおススメします。
WordPressのショートコード
WordPressのショートコードとは複雑な処理を角括弧 []で括られた短いコードにして呼び出せるようにしたものです。
WordPressのショートコードの登録
WordPressのショートコードはWordPressが管理するfunctions.phpというファイルにPHPというプログラミング言語を使って記述します。
functions.phpに不備があるとWordPressのサイトが表示できなくなったり、管理画面にログインできなくなってしまう恐れがあるので、作業前には必ずバックアップを取得してから行ってください。
トラブルが怖い方はSnippetsプラグインを導入して作業を行うことをおススメします。
年齢自動計算ショートコードの作成
では、いよいよ年齢自動計算ショートコードを作成していきます。
(このページではSnippetsプラグインを導入している前提で書いていきます。)
まず、管理画面の「Snippets⇒Add new」を選択します。
開いた画面に以下のコードを入力しショートコードにget_new_ageという名前を付けます。
(ここでつける名前はわかりやすいものであればなんでもかまいません。)
function getNowAge($birthday)
{
extract(
shortcode_atts(
array( 'birthday' => date('Ymd')), $birthday )) ;
$now = date( 'Ymd' ) ;
return floor(( $now - $birthday ) / 10000 ) ;
}
add_shortcode( 'calcage', 'getNowAge' ) ;
functions.phpを直接編集されている場合は管理画面の「外観⇒テーマエディター」からfunctions.phpを選択して編集を行ってください。
コードの内容は
- add_shortcode関数でcalcageという名前のショートコードを登録し
- calcageというショートコードが起動されたら
- getNowAgeという関数を呼び出す
- getNowAge関数では現在日付から渡された誕生日をもとに年齢を計算して返す
という処理を行っています。
入力が完了したら保存します。
年齢自動計算ショートコードの呼び出し
登録した年齢自動計算ショートコードを呼び出すには、記事内で呼び出したい箇所で以下のようにWordPressショートコードで呼び出します。
私の年齢は[calcage birthday='20010018']です。
(上記の例では2000年10月18日生まれの方の現在の年齢を表示させています。)
まとめ
WordPressのショートコードは実は自分で簡単につくることができます。
今回の年齢自動計算ショートコードもたった数行のプログラムで作成することができました。
WordPressショートコードは何度も同じことを書かなければならない場合や、自動で何かをさせたい場合などに大いに役立ちます。
さんごちゃん
functions.phpのバックアップは忘れずに!!