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');
}