4

WordPress用のカスタムプラグインを作成しようとしている次のコードがあります。

<?php

/*
    Plugin Name: Dump-It Scheduler
    Plugin URI: mycompany.com
    Description: my description
    Version: 1.0
    Author: Blaine 
    Author URI: myuri.net
    License: 

*/

function scheduler_admin_actions() {
    add_options_page('Dump-It Scheduling', 'Dump-It Schedule', 'Administrator', 'Dump-It_Master_Schedule'); 
}

add_action('admin_menu', 'scheduler_admin_actions'); 

?>

ただし、アプリの管理セクションに追加リンクが表示されません。プラグインを有効にしましたが、このプラグインのオプションが表示されることを期待しています。私が理解していることから、管理パネルにリンクが追加されているはずです。

また、エラーがないことも付け加えておきます (デバッガー プラグインを使用しています)。ここで何が起こっているのか理解できません...

問題が発生した場合に備えて、WordPress 3.6.1 を使用しています。

私は何が欠けていますか?

4

2 に答える 2

5

3番目のパラメータはcapabilitymanage_optionsであり、あなたのケースではそうでなければなりません。ロールにすることもできますが (お勧めしませんが)、小さい大文字である必要があり、 ではありませんAdministrator

コールバックである最後のパラメーターがありません。

# http://codex.wordpress.org/Function_Reference/add_options_page
add_options_page( $page_title, $menu_title, $capability, $menu_slug, $function);

順序は関係ありません。これは機能します:

function scheduler_admin_actions() {
    add_options_page(
        'Dump-It Scheduling', 
        'Dump-It Schedule', 
        'manage_options', 
        'Dump-It_Master_Schedule', 
        'my_callback'
    ); 
}
function my_callback()
{
    echo 'hello world';
}
add_action('admin_menu', 'scheduler_admin_actions'); 
于 2013-10-11T05:11:36.393 に答える
0

add_action結局のところ、関数の上を次のように移動する必要がありました。

  <?php

    /*
        Plugin Name: Dump-It Scheduler
        Plugin URI: mycompany.com
        Description: my description
        Version: 1.0
        Author: Blaine 
        Author URI: myuri.net
        License: 

    */
    //moved this call above the function definition
    add_action('admin_menu', 'scheduler_admin_actions'); 

    function scheduler_admin_actions()
    {
        add_options_page('Dump-It Scheduling', 'Dump-It Schedule', 'Administrator', 'Dump-It_Master_Schedule'); 
    }

?>
于 2013-10-11T00:50:27.820 に答える