强制WordPress忽略w url参数

问题描述 投票:3回答:2

说,我在example.com上运行了WordPress安装,并具有以下网址

http://example.com/blah?w=100

现在,我希望WordPress忽略w = 100部分,因为每次我将数字参数传递给w时,WordPress都会将我重定向到单个页面,我认为这与附件有关。

我无法将w重命名为其他任何东西,因为它不受我的控制,我的网站必须使用不允许我更改此条件的第三方应用程序。

我尝试过此

add_filter('request', array($this,'on_request'));
function on_request($vars){
  unset($vars['w']);
  return $vars;
}

而且它不起作用-请提供任何建议吗?

php wordpress-plugin wordpress
2个回答
4
投票

我会谨慎使用这种方法。 w参数是WordPress reserved query variable。该参数用于根据设置中的start_of_week选项查找星期数,并且可能会影响一堆查询。

如果您无法像您提到的那样更改参数,那么,如果可能,我将至少检查请求是否来自该第三方提供商,然后才取消设置参数。


1
投票

好的,我自己解决了。

add_filter( 'request', 'alter_the_query' );
function alter_the_query( $request ) {

    unset($request['w']);
    return $request;
}
© www.soinside.com 2019 - 2024. All rights reserved.