带有 do_action 的 add_menu_page 和 add_submenu_page 的正确回调

Right callback with do_action for add_menu_page and add_submenu_page

提问人: 提问时间:8/2/2022 更新时间:8/2/2022 访问量:198

问:

我正在尝试添加我的自定义管理菜单,但我不明白,我应该如何在 __construct() 中对函数 skillupCustomMenuMain() 和 skillupCustomMenuMainArchive () 进行回调

你能帮帮我吗,请

class AdminMenuFormSubmission
{
    public function __construct()
    {
        add_action('admin_menu', array($this, 'addCustomMenu'));
    }

    public function addCustomMenu()
    {
        add_menu_page(
            'Forms',
            'Form items',
            'manage_options',
            'skillup-custom-menu',
            'skillupCustomMenuMain',
            'dashicons-cart',
            4
        );

        add_submenu_page(
            'skillup-custom-menu',
            'Archived submissions',
            'Archive',
            'manage_options',
            'skillup-custom-menu-main-archive',
            'skillupCustomMenuMainArchive'
        );
    }

    public function skillupCustomMenuMain()
    {
        echo '<h2>Form submission</h2><div class="wrap">Welcome to the form submission</div>';
    }

    public function skillupCustomMenuMainArchive()
    {
    }

}
PHP wordpress

评论

0赞 8/2/2022
现在我有警告:call_user_func_array() 期望参数 1 是有效的回调,找不到函数“skillupCustomMenuMain”或第 307 行的 class-wp-hook.php 中的函数名称无效

答:

0赞 Rahul Gupta 8/2/2022 #1

更改自

  public function addCustomMenu()
{
    add_menu_page(
        'Forms',
        'Form items',
        'manage_options',
        'skillup-custom-menu',
        'skillupCustomMenuMain',
        'dashicons-cart',
        4
    );

  public function addCustomMenu()
{
    add_menu_page(
        'Forms',
        'Form items',
        'manage_options',
        'skillup-custom-menu',
        array( $this, 'skillupCustomMenuMain' ),
        'dashicons-cart',
        4
    );