0

我正在用这个地址创建一个 Wordpress 插件

//worpress/my-plugin/

我想(通过 GET)以 seo 友好的形式传递一些变量,比如

//worpress/my-plugin/first-var/second-var/

有什么方法可以在不更改 .htaccess 文件的情况下从我的插件中“创建”和“获取”这些变量(永久链接设置已设置为“帖子名称”模式),而只是在我的插件页面中插入一些代码?

谢谢!

4

1 回答 1

0

你可以通过重写 wordpress 的 api 来做到这一点:下面是一个小例子:

add_action('init', array($this, 'add_rules'));
add_rewrite_rule('nameofurl/?([^/]*)', 'index.php?page_id=' . $post_ID . '&jsubscribe_id=$matches[1]', 'top');//if you need this for any specefic post.
/* OR */
 add_rewrite_tag('%action%', '([^/]+)');
 add_permastruct('action', 'url_prefix_like_plugin_name' . '/%action%');

 /*After adding permastruct do below work*/
 add_filter('template_redirect', 'function_name');
 /*Get you query value and do what you want*/
 function function_name(){
   $action=get_query_var('jaction');
   //put your login here
 }

并且不要忘记 flush_rewrite_rules();

欲了解更多信息,请访问以下链接:

http://codex.wordpress.org/Rewrite_API/add_rewrite_rule
http://codex.wordpress.org/Rewrite_API/add_rewrite_tag
http://codex.wordpress.org/Function_Reference/add_permastruct
于 2013-05-23T13:34:16.463 回答