将新菜单页面添加到仪表板

时间:2012-06-04 19:43:47

标签: wordpress

我希望使用add_menu_page向WordPress信息中心添加新的部分。我唯一的问题是在哪里放这个代码?我查看了几个教程,令人沮丧的是没有人提到在哪里添加代码!

如果有人能告诉我:

  1. 您的add_menu_page代码和
  2. 的放置位置
  3. 将作为参数传递的函数注册到add_menu_page函数
  4. 的位置

    非常感谢。

2 个答案:

答案 0 :(得分:3)

通常情况下,我不会回答一个没有你已尝试过的代码的问题,但似乎这是一个更抽象的问题,所以我会给出一个更抽象的答案。

通过使用在Wordpress执行某些操作时触发的挂钩来实现对Wordpress的“黑客攻击”。当到达钩子时,系统检查是否有任何已注册的功能在执行中的该点被调用。您的菜单页面可以在主题的functions.php文件中或在插件文件中注册 - 只要您使用适当的操作挂钩注册它就没有关系。

示例

首先我们需要一个菜单​​项的页面链接到(在任何地方创建这个页面,但如果你正在做一个主题或插件目录,如果你正在做一个插件,那么理想情况下在你的主题目录中)。我打电话给我的settings_page.php并把它放在我的主题目录中。

然后我们有你的功能来注册你的菜单页面(如果你正在做主题,可以在functions.php中,或者如果你正在做插件,则在你的主插件文件中):< / p>

function create_menu() {
    $settings_page = add_menu_page( 
        __("My Settings", EMU2_I18N_DOMAIN),
        __("My Settings", EMU2_I18N_DOMAIN),
        0,
        THEME_DIRECTORY.'/settings_page.php' 
        // obviously replacing THEME_DIRECTORY with your actual directory
    );
}

然后我们使用Wordpress钩子注册你的菜单页面 - 在这种情况下是'admin_menu'钩子(与你在上面注册你的功能的文件在同一个文件中)

add_action( 'admin_menu', 'create_menu' );

现在你已经完成了。我已经在下面列出了一些额外的资源,以防你想要深入研究任何东西,但我希望这有助于为表面下发生的事情奠定更多的基础。

额外资源

Function reference for create_menu in Wordpress codex

Function reference for create_sub_menu in Wordpress codex

List of Wordpress Hooks

Wordpress tutorial for writing a plugin

答案 1 :(得分:0)

如果我没有误解你的问题,那么把你的代码放在你的主题目录中的functions.php文件中。