2014-03-25 76 views
0

我正在首次創建插件。在我的主要插件文件,我已經創建的代碼的菜單:創建插件時的權限錯誤

add_menu_page( 
    'custom menu title', 
    'custom menu', 
    'manage_options', 
    'teamstatistics/teamstatistics-admin.php', 
    '', 
    plugins_url('teamstatistics/images/icon.png'), 
    6 
); 

的問題是,當我去它的工作的網址:

http://example.com/mywordpress/wp-admin/options-general.php?page=teamstatistics/teamstatistics-admin.php 

,但是當我通過查詢字符串像

http://example.com/mywordpress/wp-admin/options-general.php?page=teamstatistics/teamstatistics-admin.php?sid=1 

這不起作用。它是給

您沒有足夠的權限來訪問此頁面。

回答

0

那麼,你沒有正確使用add_menu_page parameters。如果某些事情沒有按預期工作,請始終檢查文檔。

add_menu_page( 
    $page_title, 
    $menu_title, 
    $capability, 
    $menu_slug, 
    $function, 
    $icon_url, 
    $position 
); 

這裏是在同一個插件頁面使用$_GET一個示例代碼:

add_action('admin_menu', 'menu_so_22635531'); 

function menu_so_22635531() 
{ 
    add_menu_page( 
     'custom menu title', 
     'custom menu', 
     'manage_options', 
     'teamstatistics', 
     'page_so_22635531', 
     plugins_url('teamstatistics/images/icon.png'), 
     6 
    ); 
} 

function page_so_22635531() 
{ 
    // Do your include here 

    // Demonstrative code 
    echo '<h1>Team Statistics</h1>'; 
    if(isset($_GET['sid'])) 
    { 
     $sid = $_GET['sid']; 
     echo "<h2>SID = $sid</h2>"; 
    } 
    // Generate test link that goes to 
    // http://example.com/wp-admin/admin.php?page=teamstatistics&sid=RANDOM-NUMBER 
    printf(
     '<a href="%s">Go to new sid</a>', 
     admin_url('admin.php?page=teamstatistics&sid=').rand() 
    ); 

} 
1

你的查詢字符串是無效。 QS開始只有與一個?。名稱 - 值對是&name=value和NOT ?name=value

無效

期權general.php page = teamstatistics/teamstatistics-admin.php sid = 1

VALID;

options-general.php page = teamstatistics/teamstatistics-admin.php & sid = 1