add_filter の追跡 | add_filter と apply_filters の関係と構造
WPなどをデバッグしている時 add_filter が出てくると、
それ以上の追跡をあきらめたことってありませんか?
いやいや、追跡できるよってことで、
add_filter と applay_filters の関係をメモしておきます。
$res = add_filter(‘the_message_a‘ , ‘my_the_message‘);
function my_the_message($res , $param)
{
return $param.’ head’;
}
—– カスタマイズされる側のソース —–
function the_message($param)
{
$res = $param.’ body’;
$res = applay_filters(‘the_message_a‘ , $res , $param);
return $res;
}
※カスタマイズされる側の関数のソース内に applay_filters が入ってる。
上の例であれば、$res ( カスタマイズされる側の結果 ) と ( 呼び出された時の生のパラメータ ) を
送っています。
これにより、add_filter の関数本体では、特に結果を変更しなくていい場合には、
$res をそのまま return すればいい。
処理する必要があるなら 生のパラメータを使って処理した結果を return すればいい。
$res = add_filter(‘(a)’,'(b)’);
本体は 関数名(b)
どの関数のカスタマイズなのかは、(a) で検索すればいい。
add_filter は、エイリアスという意味がやっとわかったwww
カスタマイズされる側で applay_filters を組み込んでいなければ、add_filter で呼び出すことができないのは当たり前の話。
php そのもので 自動的に 呼出しと返しを送ってくれるような機能があると便利だったわなぁとか徒然なるままに。
それ以上の追跡をあきらめたことってありませんか?
いやいや、追跡できるよってことで、
add_filter と applay_filters の関係をメモしておきます。
add_filter と applay_filters の関係
—– 自身のソース —–$res = add_filter(‘the_message_a‘ , ‘my_the_message‘);
function my_the_message($res , $param)
{
return $param.’ head’;
}
—– カスタマイズされる側のソース —–
function the_message($param)
{
$res = $param.’ body’;
$res = applay_filters(‘the_message_a‘ , $res , $param);
return $res;
}
※カスタマイズされる側の関数のソース内に applay_filters が入ってる。
上の例であれば、$res ( カスタマイズされる側の結果 ) と ( 呼び出された時の生のパラメータ ) を
送っています。
これにより、add_filter の関数本体では、特に結果を変更しなくていい場合には、
$res をそのまま return すればいい。
処理する必要があるなら 生のパラメータを使って処理した結果を return すればいい。
add_filter の本体の探し方
$res = add_filter(‘(a)’,'(b)’);
本体は 関数名(b)
どの関数のカスタマイズなのかは、(a) で検索すればいい。
add_filter は、エイリアスという意味がやっとわかったwww
カスタマイズされる側で applay_filters を組み込んでいなければ、add_filter で呼び出すことができないのは当たり前の話。
php そのもので 自動的に 呼出しと返しを送ってくれるような機能があると便利だったわなぁとか徒然なるままに。