在WordPress中删除特定的“保留条款”

时间:2018-07-12 15:05:21

标签: php wordpress

我需要能够在WordPress中使用tag参数并将其逐页传递。但是,当我使用它时,由于WordPress的“保留条款”,WordPress会引发404错误。

我需要tag参数,因为它负责收集诸如-分隔的用户设备和其他重要信息之类的数据。我无法使用其他任何东西,因为现有的API可以解析标签参数。

示例为:http://siteurl.test/?tag=tag1-tag2-tag3

有没有办法完全删除在here中看到的特定WordPress“保留条款”

我尝试卸载标签分类法,因为它遵循与以下代码类似的结构,但仍然会导致404。

function unregister_tags() {
    unregister_taxonomy_for_object_type('post_tag', 'post');
    unregister_taxonomy_for_object_type('tag', 'post');
}
add_action('init', 'unregister_tags');

我一直在挖掘,但似乎仍然找不到这样做的方法。当我通过所有页面传递数据时,我也不能在unset($_GET['tag]);动作钩子上使用类似init的东西。

为任何愿意花时间帮助的人加油。

1 个答案:

答案 0 :(得分:0)

对于面临此问题的任何人,都有解决方案。不是最干净的,但是可以。

在坚果壳中,您拦截了每个查询,并强行忽略了在以下函数中设置的任何参数。

add_filter( 'request', 'alter_query_params' );
function alter_query_params( $request ) {
    $param_query = new WP_Query();
    $param_query->parse_query( $request );    
    unset($request['tag']);
    return $request;
}