add_menu_page需要帮助,因为它应该工作

问题描述 投票:0回答:1

自从一周前作为业余爱好者制作我自己的自定义插件以来,我想为我的插件制作一个设置页面。使用一些应该在wordpress上运行的例子后,我没有取得多大成功。一个子页面工作得很好,但我希望它是一个顶级菜单我能想到为什么这不起作用的唯一原因是因为一些访问权限问题? (之前发生过)。

所以,如果有人能帮助我,这将是件好事。提前致谢

我不确定我是否可以链接其他网站/来源,但我在这里

下面的链接有一个子页面https://wisdmlabs.com/blog/create-settings-options-page-for-wordpress-plugin/的工作示例

至于我正在使用的另一个例子应该工作得很好就是这个https://wpshout.com/wordpress-options-page/

<?php


add_action( 'admin_menu' , 'Counter_Opties_pagina_aanmaken');

function Counter_Opties_pagina_aanmaken(){
    $page_title = 'Counter';
    $menu_title = 'Counter Opties';
    $capability = 'edit_posts';
    $menu_slug  = 'Counter_pagina';
    $function   = 'Counter_pagina_inhoud';


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

}

function Counter_pagina_inhoud(){

    include 'Counter-Opties-file.php';

    }

这至少应该生成wordpress后端侧边栏中的“Counter Opties”。

php wordpress
1个回答
2
投票

所以我可以看到的问题如下:

  • slu is不是字母数字或全部小写

该函数必须位于“启动器”文件中插件的根目录中,该文件应与插件文件夹同名。 See more here

笔记:

  • 我会使用manage_options而不是edit_pages来获得该功能
  • 我会使用require_once而不是includes

有关菜单页面功能的更多信息可以是found here

add_action( 'admin_menu' , 'Counter_Opties_pagina_aanmaken');

function Counter_Opties_pagina_aanmaken(){
    $page_title = 'Counter';
    $menu_title = 'Counter Opties';
    $capability = 'manage_options';
    $menu_slug  = 'counter-opties-file.php';
    $function   = 'Counter_pagina_inhoud';

    add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function );
}

function Counter_pagina_inhoud(){
    require_once plugin_dir_path( __FILE__ ) . 'counter-opties-file.php';
}

As you can see it's added it succesfully

© www.soinside.com 2019 - 2024. All rights reserved.