如果我在这里没有遗漏什么,那么您可以有第三个/主函数,它有两个不同的包装器。
function wpse381184_main(){
//do your thing!
}
function acp_editing_saved_usage1( AC\\Column $column, $post_id, $value ) {
// call wpse381184_main()
wpse381184_main();
}
add_action( \'acp/editing/saved\', \'acp_editing_saved_usage\', 10, 3 );
function my_acf_save_post( $post_id ) {
// call wpse381184_main()
wpse381184_main();
}
add_action(\'acf/save_post\', \'my_acf_save_post\');
如果你需要
wpse381184_main
要根据调用包装器使用不同数量的参数,您可以使用包含更多参数的大小写对其进行结构,并通过使用
current_filter()
作用
function wpse381184_main($post_id, $hook, AC\\Column $column, $value){
if( \'acp/editing/saved\' === $hook){
//do your thing in case A and exit!
return;
}
// do your thing in "default" case B!
}
function acp_editing_saved_usage1( AC\\Column $column, $post_id, $value ) {
// call wpse381184_main()
wpse381184_main($post_id, current_filter());
}
add_action( \'acp/editing/saved\', \'acp_editing_saved_usage\', 10, 3 );
function my_acf_save_post( $post_id ) {
wpse381184_main($post_id, current_filter());
}
add_action(\'acf/save_post\', \'my_acf_save_post\');