企业网站模板

wp_redirect | wp_safe_redirect 重定向用户到指定页面

作者 wp_redirect | wp_safe_redirect 2021-07-12 248

功能描述

跳转用户到指定的URL,URL 必须是完整的绝对 URL。

使用说明

wp_redirect() 不会自动退出,使用时需要在后面添加退出函数。如下:

1
2
wp_redirect( $location, $status );
exit;

参数

参数 数据类型 是否必需 描述 默认值
$location 字符串 用户将被重定向到的绝对URL
$status 整数 重定向 HTTP 状态码 302

返回值

如果 $location 没有设置,返回false,其他情况下不返回任何值

使用示例

1
2
wp_redirect( home_url() );
exit;

也可以跳转到外部链接,或使用301永久永久重定向状态码 :

1
2
wp_redirect( 'http://www.example.com', 301 );
exit;

注意:

在HTTP1.1中,302是临时重定向状态码,如果需要永久重定向,请使用HTTP 301状态码。

wp_safe_redirect 与 wp_redirect 的区别

wp_safe_redirect 的作用和 wp_redirect 类似,不同的是前者在跳转之前会检查要跳转的 URL 是否为被允许的主机,检查通过后才跳转,如果检查未通过,则该函数会把用户跳转到当前站点的 /wp-admin/ 页面,这样的处理可以防止程序把用户重定向到站外的恶意网址。该函数仅在后台的少数地方使用。

如果需要修改允许 wp_safe_redirect 函数跳转的网址,我们可以通过 allowed_redirect_hosts Hook 来修改。如下:

1
2
3
4
5
6
7
8
add_filter( 'allowed_redirect_hosts', function ( $hosts ) {
    $my_hosts = array(
        'blog.example.com',
        'codex.example.com',
    );
 
    return array_merge( $hosts, $my_hosts );
}; );

相关函数

wp_sanitize_redirect:对跳转 URL 消毒。

wp_validate_redirect: 验证跳转 URL 是否为允许的 URL。

点击【分享给朋友】生成专属代理二维码,享受推广消费现金奖励!

发表评论

好哇网,累计帮助1000+用户成功建站,为小微企业提供助力!

立刻开启你的建站之旅

留言咨询

现在加入好哇网,注册一个账号