はじめに
WordPressの中を追っていく上で、do_actionの所でどのように動いているのか分からなかったので調べたことをまとめさせていただきました。
do_action
wordpressの
wp-includes/plugin.php
に以下のように定義されています。
function do_action($tag, $arg = '') {
第一引数はタグで、
do_action( 'template_redirect' );
としてタグをtemplate_redirect
とすれば、do_actionを実行した時にtemplate_redirect
タグで追加された関数が実行されます。
add_action
do_action関数が実行された時に呼ばれる関数を定義します。
wordpressの
wp-includes/plugin.php
に以下のように定義されています。
add_action($tag, $function_to_add, $priority = 10, $accepted_args = 1)
第二引数はdo_actionにフックする関数です。
add_action('template_redirect', 'redirect_canonical');
とすれば、do_action( 'template_redirect' );
が呼ばれた時に、function redirect_canonical
が実行されます。
参考にしたサイト