WordPress Hook动作钩子 admin_menu
Wordpress Hook动作钩子 admin_menu 用于管理员页面加载的时候调用,当插件应用于管理页面时,需要用这个钩子来执行代码。
调用方法:
add_action('admin_menu','function_name');
以创建一个订单数据库为例:
<?php /* Create database for orders */ function create_order_table(){ global $wpdb; include_once(ABSPATH.'/wp-admin/includes/upgrade.php'); $table_charset = ''; $prefix = $wpdb->prefix; $order_table = $prefix.'orders'; if( $wpdb->has_cap('collation') ){ if( !empty($wpdb->charset) ){ $table_charset = "DEFAULT CHARACTER SET $wpdb->charset"; } if(!empty($wpdb->collate)) { $table_charset .= " COLLATE $wpdb->collate"; } } $create_order_sql = "CREATE TABLE $order_table ( id int(11) NOT NULL auto_increment, user_id int(11) NOT NULL, time datetime NOT NULL default '0000-00-00 00:00:00', money double(10,2) NOT NULL default 0, balance double(10,2) NOT NULL default 0, status int(1) NOT NULL default 0, PRIMARY KEY (id)) ENGINE = MyISAM $table_charset;"; maybe_create_table($order_table,$create_order_sql); } add_action('admin_menu','create_order_table'); ?>
再看一个例子,插件创建管理菜单项:
add_action('admin_menu', 'wpautop_control_menu'); function wpautop_control_menu() { add_submenu_page('options-general.php', 'wpautop-control', 'wpautop control', 'manage_options', 'wpautop-control-menu', 'wpautop_control_options'); }