You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress应用筛选后如何移除URL末尾斜杠?

解决WordPress筛选后URL末尾斜杠问题

以下是几种可行的解决方法,按需选择:

1. 用重定向钩子修正已生成的URL

将这段代码添加到主题的functions.php文件或自定义插件中,它会在WordPress的规范重定向过程中,自动移除分类筛选页面URL末尾的斜杠:

add_filter('redirect_canonical', 'remove_trailing_slash_on_filter_url', 10, 2);
function remove_trailing_slash_on_filter_url($redirect_url, $requested_url) {
    if (is_category() && isset($_GET['orderby'])) {
        $redirect_url = rtrim($redirect_url, '/');
    }
    return $redirect_url;
}

2. 从源头修改筛选链接的生成逻辑

如果你的筛选功能是通过代码生成跳转链接,检查生成链接的代码是否手动添加了斜杠。比如原本可能是这样的:

$filter_link = add_query_arg('orderby', 'popularity', get_category_link($cat_id) . '/');

把末尾的斜杠去掉,改成:

$filter_link = add_query_arg('orderby', 'popularity', rtrim(get_category_link($cat_id), '/'));

这样生成的链接就不会带多余的斜杠了。

3. 全局处理所有带查询参数的URL

如果希望所有带有查询字符串的URL都自动移除末尾斜杠,用这个钩子:

add_filter('user_trailingslashit', 'remove_slash_before_query', 10, 2);
function remove_slash_before_query($url, $type) {
    if (strpos($url, '?') !== false) {
        $url = preg_replace('#/(?=\?)#', '', $url);
    }
    return $url;
}

内容的提问来源于stack exchange,提问作者maqsman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 17:40:58