特定の親(または祖父母関数、または曽祖父母など)から呼び出された場合にのみ、関数を実行しようとしています。debug_backtrace を使用してやりたいことを達成できますが、これは正しい方法ではないように感じます。たとえば、次のようにします。
function savethepost($post_id) {
$parent = debug_backtrace();
if ($parent[5]['function'] == 'bulk_edit_posts') {
if ( isset( $_REQUEST['post_format'] ) && $_REQUEST['post_format'] != -1 ) {
set_post_format($post_id, $_REQUEST['post_format']);
}
}
}
これは、savethepost関数がbulk_edit_posts関数から呼び出された場合にのみ、Wordpress関数でバックトレースを使用してset_post_format関数を実行しています。これは私が達成しようとしているものです。しかし、このメソッドはデバッグ用なので、このように使用しても問題ないでしょうか? そうでない場合、特定の親関数からのみ来ている場合、どうすれば関数を呼び出すことができますか?