可以更改插件的管理面板URL吗?

时间:2018-02-23 作者:jyyser

我很想知道我是否可以更改管理面板的URLmydomain.com/wp-admin/?page=my-pluginmydomain.com/wp-admin/my-plugin.php

谢谢

2 个回复
最合适的回答,由SO网友:Mark Kaplun 整理而成

一般来说没有,或者至少如果你努力做到这一点,那么使用mydomain.com/wp-admin/my-plugin (没有php扩展)。

原因是wordpress使用的htaccess规则默认情况下,首先尝试在隐含路径中定位一个文件,如果它不在那里,它会“触发”前端处理,这是您最不希望在管理会话上下文中发生的事情。因此URL位于wp-admin 应该映射到隐含位置的实际PHP文件。

如何绕过这个限制?最简单的方法有两个部分,一个是修改htaccess,将管理页面的url映射到“普通”wordpress管理url,或者在处理请求的早期截取url,并适当修改相关的PHP全局变量。更难的是修改相关管理API的输出,以便在相关上下文中生成正确的URL,并且可能总是需要处理一些额外的意外边缘情况。

SO网友:Mohit Kumar

根据您的问题,我想您应该在插件菜单上单击调用单独的php文件(my plugin.php)。如果我是对的,你可以遵循下面的代码,否则很抱歉。

您可以通过回调函数调用它。

add_action(\'admin_menu\', \'my_plugin_menu\');

function my_plugin_menu() {
    add_options_page(
          \'My Plugin Options\'
        , \'My Plugin\'
        , \'manage_options\'
        , \'my-unique-identifier\'
        , \'my_plugin_options\'
    );
}

function my_plugin_options() {
    require \'my-plugin.php\';
}

结束

相关推荐

Pretty permalinks (again)

我正试图在我的WordPress站点中启用永久链接。但每次我尝试更改为除默认链接外的任何永久链接选项时,帖子的链接都会转到404。如果我把它改回来,它就正常工作了。我正在Ubuntu服务器14.04上使用WP 4.2.4和Apache 2.4.7。我做过的事情:我有mod_rewrite 在Apache中启用</我有选择+FollowSymLinks 和AllowOverride All 和RewriteEngine On 在Apache服务器的配置文件中</我已给予书面许可.htaccess