我发布了基于一年,一月和一天的类别
分类
2013
May 14
APRIL 10
2012
JUNE 6
我正在创建特定日期类别的重写网址 通过创建类似/ slug-name / issues / year / month / date
的URL我的重写网址在
之下add_action('generate_rewrite_rules', 'past_issue_rewrite_rules');
function past_issue_rewrite_rules( $wp_rewrite ) {
$wp_rewrite->rules = array_merge( array('category/past-issues/issues/(.+)/(.+)/
(.+)/' => 'category/past-issues/?year='.$wp_rewrite->preg_index(1).'&month='.
$wp_rewrite->preg_index(2).'&day='.$wp_rewrite->preg_index(3)),
$wp_rewrite->rules );
}
add_filter( 'query_vars', 'setup_filter_query_vars' );
function setup_filter_query_vars( $query_vars )
{
$query_vars[] = 'year';
$query_vars[] = 'month';
$query_vars[] = 'day';
return $query_vars;
}
当我尝试访问该页面时,它显示未找到页面。
什么是错误?
是否可以将参数发送到category.php
页面
我不确定。如果这是错误的,请告诉我。
答案 0 :(得分:0)
我自己找到了s0lution,这里是代码
function past_issue_rewrite_rules(){
add_rewrite_rule(
'category/past-issues/(\d+)/(\d+)/(\d+)/?$',
'index.php?category_name=past-issues&pyear=$matches[1]&pmonth=$matches[2]&pday=$matches[3]',
'top'
);
}
add_action( 'init', 'past_issue_rewrite_rules' );
add_filter( 'query_vars', 'setup_filter_query_vars' );
function setup_filter_query_vars( $query_vars )
{
$query_vars[] = 'pyear';
$query_vars[] = 'pmonth';
$query_vars[] = 'pday';
return $query_vars;
}