WordPress固定链接仍然无法工作(错误或未理解?)

时间:2013-12-18 作者:user3114592

在理解wordpress permalinks几个小时后,我很失望,希望有人能帮助我。

我有以下链接:

www.mysite.com/?page_id=923&bahn=BER
激活永久链接后,链接变为

www.mysite。com/数据/溜冰场?bahn=BER

到目前为止还不错。但我的目标是建立这样的链接:

www.mysite.com/data/rink/BER
因此,我在我的函数中包含了以下代码。php

add_filter( \'query_vars\', \'add_custom_page_variables\' );
function add_custom_page_variables( $public_query_vars ) {
    $public_query_vars[] = \'bahn\';
    return $public_query_vars;
}

add_action( \'init\', \'wpa5413_init\' );
function wpa5413_init()
{
    add_rewrite_rule(
        \'data/rink/([^/]+)\',
        \'index.php?pagename=rink&bahn=$matches[1]\',
    \'top\' );

    global $wp_rewrite;
    $wp_rewrite->flush_rules();
}
我已经用一个插件测试了这个规则,它显示规则已经激活,应该是正确的。但它不起作用!输入URL时,它总是“重定向”到:

www.mysite.com/data/rink or www.mysite.com/data/rink?bahn=BER
有人能指出我的代码有什么问题吗?

1 个回复
SO网友:user3114592

好的,我自己找到了解决办法。我忘记了通过$wp\\u query->query\\u vars[\'bahn\']访问变量。现在一切正常。

但不幸的是,在浏览器地址行中显示或翻译的URL仍然不正确。它总是告诉我

www.mysite.com/data/rink/?bahn=BER
但我想看看

www.mysite.com/data/rink/BER
如何实现这一点?

结束

相关推荐

Redirect to custom login page

我已经创建了一个用于登录/注册的自定义页面。是否有任何自动重定向所有wp登录的方法。php调用该页面,或者我需要手动替换所有链接。例如,在评论表单上,我有以下默认消息:你一定是logged in 发布评论。登录的链接到http://localhost/wp-login.php?redirect_to=url 如何将其更改为:http://localhost/my-custom-login-page