zst062102

在page-url.php页面做测试

<h2>url伪静态</h2>

接收到的pagename参数是:<? echo $wp_query->query_vars[\'pagename\'] ?><br/>
接收到的v参数是:<? echo $wp_query->query_vars[\'v\']; ?>

functions.php加入

	add_filter(\'rewrite_rules_array\',\'my_insert_rewrite_rules\');
	add_filter(\'query_vars\',\'my_insert_query_vars\');
	add_action(\'wp_loaded\',\'my_flush_rules\');//当wp加载时,运行my_flush_rules方法


	//如果伪静态规则里面没有我们的规则,则进行重置
	function my_flush_rules(){
		$rules = get_option(\'rewrite_rules\');  //获取option数据表中‘rewrite-rules’

		if (!isset($rules[\'url-(.*).html\'])) {
			global $wp_rewrite;
			$wp_rewrite->flush_rules();
		}
	}
	
	//添加一个新的伪静态规则
	function my_insert_rewrite_rules($rules){
		$newrules = array();
		$newrules[\'url-(.*).html\'] = \'index.php?pagename=$matches[0]&v=$matches[1]\';
		return $newrules + $rules;
	}

	//添加一个变量名称
	function my_insert_query_vars($vars){
		array_push($vars, \'v\');
		return $vars;
	}
	
	//echo $wp_query->query_vars[\'v\'];  //在需要获取的get传值的地方写入

  

保存之后,在浏览器地址栏输入 localhost/wordpress/url-123.html,;做测试

 

附:wordpress固定链接设置的一些参数

  1. %year%:基于文章发布的年份,比如2010;
  2. %monthnum%:基于文章发布的月份,比如01;
  3. %day%:基于文章发布当日,比如06;
  4. %hour%:基于文章发布小时数,比如23;
  5. %minute%:基于文章发布分钟数,比如43;
  6. %second%:基于文章发布秒数,比如33;
  7. %postname%:基于文章的postname,其值为撰写时指定的缩略名,不指定缩略名时是文章标题;
  8. %post_id%:基于文章post_id,比如48;
  9. %category%:基于文章分类,子分类会处理成“分类/子分类”这种形式;
  10. %author%:基于文章作者名。

分类:

技术点:

相关文章:

  • 2019-02-12
  • 2021-09-30
  • 2018-04-23
  • 2021-09-08
  • 2021-09-08
  • 2021-11-03
  • 2021-09-08
  • 2021-08-01
猜你喜欢
  • 2021-09-08
  • 2021-11-01
  • 2019-07-12
  • 2017-12-07
  • 2021-09-08
  • 2021-11-29
  • 2021-08-01
相关资源
相似解决方案