首页 > CMS > Wordpress > 正文

WORDPRESS中自定义路由和URL参数

2024-09-07 00:51:43
字体:
来源:转载
供稿:网友

如果我们希望url地址漂亮方便收录我们需要进行一些优化了,下面来介绍WORDPRESS中自定义路由和URL参数的例子.

wordpress可以使用rewrite API让url更加美观,需要用到两个相关的rewite函数,分别是add_rewrite_tag和add_rewrite_rule,下面看看具体的例子如何自定义wordpress路由规则,和自定义url参数.

  1. add_action( 'init''my_rr_url' ); 
  2. function my_rr_url() 
  3. {       
  4.     //Ensure the $wp_rewrite global is loaded 
  5.     global $wp_rewrite
  6.     add_rewrite_tag('%myname%','([^&]+)'); 
  7.     add_rewrite_rule( 'haha/([A-Za-z0-9]{1,})/?$','index.php?page_id=8&myname=$matches[1]''top' ); 
  8. //开源软件:Vevb.com 
  9.     //Call flush_rules() as a method of the $wp_rewrite object 
  10.     $wp_rewrite->flush_rules(); 

add_rewrite_tag自定义url参数

使用add_rewrite_tag函数可以添加自定义url参数,比如以上例子的&myname=,告诉wordpress myname参数是合法的,因此使用add_rewrite_tag函数注册这个url参数.

*add_rewrite_tag函数不是美化wordpress URL路由规则必须的,当你添加自定义参数时才会用到,比如本例添加了一个参数myname.

add_rewrite_rule自定义路由

要美化wordpress的url,必须使用add_rewrite_rule函数,自定义url访问规则,告诉wordpress如何正确解析,如上例中的:

  1. add_rewrite_rule( 'haha/([A-Za-z0-9]{1,})/?$','index.php?page_id=8&myname=$matches[1]''top' ); 

第一个匹配的参数是$matches[1],第二个是$matches[2],以此类推.

熟悉使用了这个两个函数:add_rewrite_tag和add_rewrite_rule,就可以随心所欲的自定义wordpress网站的路由规则了.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表