我正在使用WP 3.2.1。
我试着做永久链接,比如:/en/1/some string。结构为:%lang%/%pageID%/%一些随机字符串%
因此,我添加了一条重写规则:
function nw_lang_addRewrite($aRules) {
$_aRules["(en|lt|ru)/(\\d+)(/.*)?$"] = \'index.php?p=$matches[2]&lang=$matches[1]\';
$aRules = $_aRules + $aRules;
return $aRules;
}
添加lang标记:
function nw_lang_addQuery($vars) {
$aVars[] = "lang";
return $aVars;
}
Buf如果用户转到
http://www.somesite.com/en/17/2-Pork.html 他没有看到ID=17的页面。
$wp\\u查询为:
WP_Query Object (
[query_vars] => Array
(
[lang] => en
[error] =>
[m] => 0
[p] => 0
.....
[static] =>
[pagename] =>
[page_id] => 0
[paged] => 0
....
[is_single] =>
[is_preview] =>
[is_page] =>
[is_paged] =>
...
[queried_object] =>
[queried_object_id] => 0
)
最合适的回答,由SO网友:neworld 整理而成
我发现了一个问题。我需要将函数参数名称更改为“$aVars”。
function nw_lang_addQuery($avars)