重写wordpress插件url somthing else

时间:2017-02-06 16:05:54

标签: php wordpress .htaccess mod-rewrite

我正在为wordpress开发一个插件。 我想重写插件url。例如我有这个:

http://www.domain.com/wp-content/plugins/myplugin/common/user/panel.php

这是一个面向wordpress用户做某事的面板。 如何重写这个网址?

http://www.domain.com/panel

1 个答案:

答案 0 :(得分:1)

假设您故意让您的用户直接访问您的Wordpress插件php文件

您可以使用 .htaccess 文件执行此操作,并按照问题中提到的方式创建重写规则。

执行此操作的基本方法:

RewriteEngine On # Turn on the rewriting engine
RewriteRule ^/panel.php?$ /wp-content/plugins/myplugin/common/user/panel.php [L]

第一个参数是匹配的网址,第二个参数是替代网址。另外[L]意味着这应该是匹配时不应该遵循的最后一条规则。

如果您对此不熟悉,请参阅以下文章:https://www.addedbytes.com/articles/for-beginners/url-rewriting-for-beginners/

如果没有,只需在Wordpress从插件开始之前捕获网址请求

我会从这开始:

add_action('parse_request', 'panel_handler_action');

function panel_handler_action() {
if($_SERVER["REQUEST_URI"] == '/panel.php') { //make sure /panel.php is not existing
      //do your stuff here
}
}