为管理区域注册页面时,使用add_submenu_page
或任何其他add_{TYPE}_page
函数第四个参数接受唯一标识符,该标识符指定注册页面将使用的挂钩。。
如果我要注册一个选项,例如:
add_options_page( \'Example Plugin Options\', \'Example Plugin\', \'manage_options\', \'example-plugin-identifier\', \'example_plugin_options\' );
然后该页面可以使用各种挂钩,具体来说,这里只是现在注册的页面的一些可能操作。
// load-{HANDLE}
add_action( \'load-example-plugin-identifier\', \'example_plugin_callback\' );
// admin_head-{HANDLE}
add_action( \'admin_head-example-plugin-identifier\', \'example_plugin_callback\' );
// admin_print_scripts-{HANDLE}
add_action( \'admin_print_scripts-example-plugin-identifier\', \'example_plugin_callback\' );
// admin_print_styles-{HANDLE}
add_action( \'admin_print_styles-example-plugin-identifier\', \'example_plugin_callback\' );
function example_plugin_callback() {
// Run your code here
}
还有
admin_enqueue_scripts
钩子,它在传递给回调函数的字符串/变量中提供当前句柄的名称。
add_action( \'admin_enqueue_scripts\', \'example_plugin_callback\' );
function example_plugin_callback( $handle ) {
// If the handle is not the page registered earlier, return
if( \'example-plugin-identifier\' =! $handle )
return;
// Run your code here
}
通常不需要使用
admin_head
,
admin_print_scripts
或
admin_print_styles
除非您有特定的目标要求
every 或在回调中执行条件逻辑,以定位特定的注册页。
希望这有帮助。。