假设我有以下挂钩函数:
function my_function() {
  $post_type = isset( $_GET[\'post_type\'] ) ? $_GET[\'post_type\'] : \'\';
  if( !isset( $_REQUEST[\'mode\'] ) )
    $_REQUEST[\'mode\'] = ( $post_type == \'my_post_type\' ) ? \'excerpt\' : \'list\';
}
add_action( \'load-edit.php\', \'my_function\', 10, 1 );
第四个参数是(来自WP Codex):
(int)(可选)挂钩函数接受的参数数。在WordPress 1.5.1+中,挂钩函数可以接受在运行匹配的do\\u action()或apply\\u filters()调用时设置的额外参数。例如,操作comment\\u id\\u not\\u found将传递任何钩住请求注释id的函数。
Default: 1
 默认值为1,但我不向挂钩函数传递任何参数。
我应该添加这样的操作吗?
add_action( \'load-edit.php\', \'my_function\', 10, 0 );
 
                    最合适的回答,由SO网友:gmazzap 整理而成
                    WordPress将接受的参数值用作$length 的参数array_slice 执行操作时。
这意味着,如果你通过0 不会向回调传递任何参数。
然而,只有在传递或不传递参数时函数的行为不同时,才应该注意这一点。
类似于OP中的函数,定义时没有任何参数,也没有类似的函数func_get_args() 或func_get_arg() 是用在它里面的,所以它的意思是you can pass any number of arguments to that function, but it will not change its behaviour.
因此,您可以忽略add_action 像这样:
add_action( \'load-edit.php\', \'my_function\', 10 );
 还要考虑10是默认优先级,所以前一行的效果与
add_action( \'load-edit.php\', \'my_function\' );
 从代码质量的角度来看,这既不差也不好,避免传递不相关的参数只会节省键入一些字符的时间。