首页 > 解决方案 > Wordpress wp-content 插件不是管理员 add_menu_page

问题描述

我正在尝试使用管理页面的外部 PHP 文件获取 Wordpress add_menu_page(作为迄今为止失败的学习练习的一部分)。

我有以下文件夹结构

/plugin-name
     plugin-name.php
     uninstall.php  
     /languages
     /includes
          /views
     /admin
          /js
          /css
          /images
     /public
          /js
          /css
          /images

并且通过下面的代码,我试图确保从 wp-content 插件目录加载 php,但是到目前为止我所有确保我始终引用 wp-content/plugins 文件夹的尝试都失败了,我总是结束在 wp-admin 目录中:-

//define('MYPLUGINS_BASEPATH', plugins_url(__FILE__));

add_action( 'admin_menu', 'MYPLUGINS_datatest_options_page' );
function MYPLUGINS_datatest_options_page() {

    //$test99 = basename("https://MYSERVER.com/wp-content/includes/views/admin/");
    $test99 = basename("https://MYSERVER.com/wp-content/");

    add_menu_page(
        'MYPLUG Data Test TITLE text',  // Title of page
        'MYPLUG Data Test LINK text',   // Menu link text
        'manage_options',
        $test99, //'includes/views/admin/datatest-admin-page.php',
        null,
        null, //plugin_dir_url(__FILE__) . 'images/icon_wporg.png',
        80 //20
    );
}

始终引用 wp-content/plugins 文件夹的最佳和最可靠的方法是什么?

我上面对 $test99 的引用我知道它不应该是文件的实际路径而不是 url,就好像我尝试https://MYSERVER.com/wp-content/includes/views/admin/datatest-admin- page.php在浏览器中显示 404。

我已经尝试了那里的参考并查看了其他插件,但我无法弄清楚如何让事情不在 wp-admin 中查看。

我读到使用 wp_plugindir 不是一个好主意,而 plugins_url 也总是让我留在 wp-admin 中。

朱亚尔

标签: wordpress

解决方案


推荐阅读