从插件文件访问Wordpress Core(全局类似:$ menu,$ submenu等)

时间:2013-11-10 14:59:28

标签: php wordpress-plugin wordpress

我目前正在为Wordpress开发一个插件。该插件位于:/wp-content/plugins/my-plugin/

在我的插件文件夹中,我创建了一个名为results.php的文件,某些jQuery代码使用该文件来收集特定信息。

results.php的顶部如下所示:

<?php
define('WP_USE_THEMES', false);
define('WP_DEBUG', true);
global $wp, $wp_query, $wp_the_query, $wp_rewrite, $wp_did_header;

require(BASE_PATH . 'wp-load.php');
    global $menu, $submenu;

    echo '<h1>Hello World</h1>';

    foreach($menu as $key => $item) {
        // rest of the code...
        // etc

但遗憾的是,这不起作用。

在上面的例子中,我需要从全局数组$menu$submenu中获取数据,这完全适用于我的插件设置页面(由add_submenu_page加载)。

你们有谁知道我做错了什么?

提前致谢!

1 个答案:

答案 0 :(得分:0)

哇 - 好吧,我似乎找到了解决方案:

results.php

<?php
    $root = dirname( __FILE__ );
    $root = explode('wp-content', $root);
    $root = $root[0] . 'wp-admin/admin.php';
    require_once($root);

        echo '<h1>Hello World</h1>';

        foreach($menu as $key => $item) {
            // rest of the code...
            // etc

所以 - 它有效。

针对上述解决方案的任何反馈? (兼容性明智)。对我来说似乎太简单了。