我有两个自定义重写规则;在阅读了这里的大量优秀帖子后,我找到了一种让它们发挥作用的方法。
问题是:Is there a way to merge this code? I\'m not sure that the way I wrote it is optimal:
在我的功能中。php我有第一条规则的代码:
add_action(\'init\', \'rewrite_cat\'); // Rewrite Category
add_action(\'query_vars\', \'rewrite_query_vars_cat\');
add_filter(\'template_include\', \'rewrite_template_include_cat\');
function rewrite_cat(){
add_rewrite_rule( \'([^/]+)/([0-9]+)/?\', \'index.php?catname=$matches[1]¤tpage=$matches[2]\', \'top\' );
}
function rewrite_query_vars_cat($query_vars){
$query_vars[] = \'currentpage\';
$query_vars[] = \'catname\';
return $query_vars;
}
function rewrite_template_include_cat($template){
if (get_query_var(\'currentpage\') || get_query_var(\'catname\')){
$template = locate_template(array(\'category.php\'));
}
return $template;
}
之后,这是第二条规则的代码:add_action(\'init\', \'rewrite_perf\'); // Rewrite Perf
add_action(\'query_vars\', \'rewrite_query_vars_perf\');
add_filter(\'template_include\', \'rewrite_template_include_perf\');
function rewrite_perf(){
add_rewrite_rule(\'cam/([^/]+)/([^/]+)/?\', \'index.php?name=cam&sgcatname=$matches[1]&perf=$matches[2]\', \'top\');
}
function rewrite_query_vars_perf($query_vars){
$query_vars[] = \'sgcatname\';
$query_vars[] = \'perf\';
return $query_vars;
}
function rewrite_template_include_perf($template){
if (get_query_var(\'sgcatname\') || get_query_var(\'perf\')){
$template_perf = locate_template(array(\'single.php\'));
}
return $template;
}