wordpress学习(四)---url伪静态简单了解

时间:2024-12-23 21:03:19

在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%:基于文章作者名。