【发布时间】:2014-10-17 08:03:23
【问题描述】:
我正在尝试在 url 中发送一个变量。由于我激活了永久链接,因此我正在尝试添加重写规则,正如我在此处阅读的帖子中所述...
嗯,没有任何工作。这是我在functions.php上的代码
add_filter('rewrite_rules_array','wp_insertMyRewriteRules');
add_filter('query_vars','wp_insertMyRewriteQueryVars');
add_filter('init','flushRules');
// Remember to flush_rules() when adding rules
function flushRules(){
global $wp_rewrite;
$wp_rewrite->flush_rules();
}
// Adding a new rule
function wp_insertMyRewriteRules($rules)
{
$newrules = array();
$newrules['view-article/(.+)'] = 'index.php?pagename=view-article&aid=$matches[1]';
$finalrules = $newrules + $rules;
return $finalrules;
}
// Adding the var so that WP recognizes it
function wp_insertMyRewriteQueryVars($vars)
{
array_push($vars, 'aid');
return $vars;
}
//Stop wordpress from redirecting
remove_filter('template_redirect', 'redirect_canonical');
这是获取变量的调用。
$aid = urldecode($wp_query->query_vars['aid']);
我做错了什么? :( 我的wordpress版本是4.0(最新)
【问题讨论】:
-
你想做什么...比如,示例 URL 和最终结果是什么?
-
我正在尝试访问“misyte.com/view-article/23”并在该页面中从另一个数据库创建动态视图,因此我需要获取查询 ID。跨度>
标签: php wordpress variables url permalinks