WordPress网站链接中的参数?怎么移除

网址后缀增加无效的?加广告词的形式,如果刚好这样的链接被收录了,那么当访客从搜索引擎通过这个链接进入网站的时候,浏览器中的网址栏就会出现这样的违规词,用户体验很差,访客有被误导的风险,存在重复页面对网站SEO优化也非常不好。

因此,移除这些查询参数也是优化WordPress网站的一个重要步骤,下面直接上代码,添加到当前使用的WordPress主题的functions.php中。

//移除网址链接中的参数,避免被刷广告
function dhz_remove_query_strings() {
    //跳过后台和搜索页面
    if (is_admin() || is_search()) {
        return;
    }
    if (strpos($_SERVER['REQUEST_URI'], '?') !== false) {
        //获取当前链接
        $current_url = home_url(add_query_arg(array()));
        //301重定向至不带参数的链接
        wp_redirect(strtok($current_url, '?'), 301);
        exit();
    }
}
add_action('template_redirect', 'dhz_remove_query_strings');

这段代码的作用是在WordPress的template_redirect钩子上运行一个回调函数,用于移除当前页面的所有查询参数并将用户重定向到没有查询参数的新URL。

具体来说,该函数执行以下操作:

检查当前页面是否是后台页面或搜索页面。如果是,则不进行任何操作,直接返回。

检查当前URL是否包含查询参数。如果没有,则不进行任何操作,直接返回。

如果当前URL包含查询参数,则使用home_url()函数获取当前站点的主页URL,并使用add_query_arg()函数获取当前页面的完整URL。

然后,使用strtok()函数将所有查询参数从当前URL中删除,并使用wp_redirect()函数将链接301重定向到新的没有任何查询参数的URL,最后使用exit()函数终止执行。

👋 感谢您的观看!

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享