我的重写规则,为深入链接到播客创建一个方便的url
add_filter("rewrite_rules_array", function($rules) {
$newRules = array();
$newRules["(.*)/time/([\\d|\\:]+)s?$"] = \'index.php?name=$matches[1]&t=$matches[2]\';
$merged = array_merge($newRules, $rules);
return $merged;
});
查询监视器向我显示此重写规则正在工作;我开始单身了。php与正确的帖子,Woop Woop!
但是$_GET["t"]
未设置。我也没有看到t
在里面$wp_query->query_vars
. 我现在如何利用t
内部single.php
?
。
。
让我困惑的是:我的重写规则/email
类似工程;但是email.php
可以使用get vars;
add_rewrite_rule(
\'^email/(.*)/(.*)/?$\',
\'wp-content/themes/myTheme/email.php?to=$1&subject=$2\',
\'top\'
);
最合适的回答,由SO网友:kater louis 整理而成
尼古拉的小费让我走上了正确的道路;以下是工作代码:
// add a query_var first
add_filter("query_vars", function($vars) {
$vars[] = "myTheme_podcast_time";
return $vars;
});
add_filter("rewrite_rules_array", function($rules) {
$newRules = array();
$newRules["(.*)/time/([\\d|\\:]+)s?$"] = \'index.php?name=$matches[1]&myTheme_podcast_time=$matches[2]\';
$merged = array_merge($newRules, $rules);
return $merged;
});
然后进来
single.php
:
$time = get_query_var("myTheme_podcast_time");
// do stuff