我正在为wordpress开发一个插件。 我想重写插件url。例如我有这个:
http://www.domain.com/wp-content/plugins/myplugin/common/user/panel.php
这是一个面向wordpress用户做某事的面板。 如何重写这个网址?
http://www.domain.com/panel
答案 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
}
}