add_action(‘フック名’,’コールバック関数名’)は、コールバック関数のプログラム内容を呼び出し、do_action()で行われるさまざまなフックの処理やタイミングでサイトに機能を追加するための関数です。
アクションフックの詳細な説明、使用できるフックの一覧、処理順序などについてはこちら、または公式ページを参照ください。
本ページの内容は、あくまでもサイト管理者である私の所見と実際に使用した経験などに基づくものであり、解釈が間違っていたり、誤りがあることがありますので、正確な情報は上記の公式ページ等を参照ください
add_action()を使用した基本的なコード
基本的には以下のようにして使用します。
function pwcn_add_action_sample_callback(){
--指示内容--
}
add_action('フック名','pwcn_add_action_sample_callback',10);
コード中の「,10」の部分は実行の優先度で、省略した場合は「10」が適用されます。
同じ処理を行うコードがある場合で先に処理させたい場合には10より小さい値を設定するか、他方のコードの優先順を10よりも大きい値にして調整することができます。
主なフック名と処理順序
以下がadd_action()を使って追加できる主なフック名と処理順序です。
公式にも書かれていますが、環境等によって前後することがあるようですので、意図したタイミングや目的で読み込まれるように調整する必要がある場合があります
フック名 | 役割など |
---|---|
plugins_loaded | プラグインの読み込み時 |
after_setup_theme | テーマが読み込まれる前 |
init(widgets_init) | ユーザー認証後でプラグインが初期化される時 |
register_sidebar | サイドバーの登録 |
wp_register_sidebar_widget | サイドバーウィジェットの追加 |
wp_loaded | WordPressが完全に読み込まれた後 |
pre_get_posts | クエリが実行される前 |
template_redirect | どのテンプレートをロードするかを決定する前 |
wp_enqueue_scripts | スクリプトとスタイルがキューに追加される時 |
the_post | クエリの直後に投稿オブジェクトを変更 |
wp_footer | どのテンプレートをロードするかを決定する前 |
shutdown | PHP の実行が終了する前 |