add_action, add_filterで無名関数が使えます。

最近は PHP 5.3 がいろんなレンタルサーバーでもメジャーになってきて、PHP 5.2 は若干レガシーかな。みたいな雰囲気ですね。

そんなPHP 5.3ですが、無名関数が使えます。

こんな感じで、書けるようになりました。JavaScriptみたいに書けますね!

前から、create_functionという関数はあったんですが、こんな感じで文字列で渡さないとなので、とても読み書きがしづらいんですよね。匿名関数というやつです。

そんなわけで、add_action, add_filter もこんな風に書けます。

時と場合を選ぶとは思うんですけど、アクションフック・フィルターフックは無名関数を使って書いた方が、関数名の衝突等も発生しないのでいい場合も多いかもしれません。また、チームのメンバーがJavaScript得意って場合もこっちの方が読み易いかも知れません。

とりあえず、オーバーライドや、remove_action, remove_filer が想定される場合は避けましょう。