web-dev-qa-db-ja.com

add_actionのショートカット

書くのではなく、PHP 5.4以上(正確なバージョンを覚えていない)と思います。

function some_function() {

}
add_action( 'init', 'some_function' );

無名関数を渡すことができます。

add_action( 'init', function() {

} );

より良い近道はありますか?たとえば、可能であればfunction()という文字を削除するなどです。

1
Ramanan

WordPress開発リファレンスから、 add_action 関数は2つのパラメータと2つのオプションを必要とします。

最初のパラメータ$tagは、$function_to_addがフックされているアクションの名前である文字列です。

2番目のパラメータ$function_to_addは、WordPress開発者リファレンスが述べている 呼び出し可能 で、「呼び出す関数の名前」です。実際には、呼び出し可能な任意のものにすることができます。関数に対応する文字列、静的メソッドに対応する配列、オブジェクトメソッドに対応する配列、またはクロージャ。

3番目の(オプションの)パラメータ$priorityは、特定のアクションに関連する関数が実行される順番を指定するために使用されます。小さい番号は先の実行に対応し、同じ優先順位を持つ関数はアクションに追加された順に実行されます。

4番目の(オプションの)パラメータ$accepted_argsは、関数が受け付ける引数の数です。

より良い近道はありますか?たとえば、可能であれば文字function()を削除するなどです。

いいえ、違います。近道はまったくありません。クロージャを渡すことは、少数の文字を必要とするかもしれませんが、近道ではありません。コメントで説明されているように、コールバックとしてクロージャー(無名関数)を使用することはアクションを削除する簡単な方法を可能にしないので推奨されません。

1
Nathan Johnson