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

WordPress中wp_redirect无法跳转至目标URL问题求助

解决WordPress首页重定向失效的问题

嘿,我来帮你搞定这个重定向不工作的问题~你的代码里有几个关键问题,我一步步给你拆解并修正:

原代码的核心问题

  • is_page()函数用错了:这个函数不能直接传完整URL,它只认页面的ID、slug(别名)或者标题。而且判断首页的话,WordPress有专门的函数is_front_page()(匹配你设置的「静态首页」)或者is_home()(匹配博客文章列表页),用这两个才准确。
  • URL匹配的局限性:如果你的网站实际运行在HTTPS或者带WWW的域名下,你写的http://mywebsite.com/就和当前访问的URL不匹配,自然不会触发重定向逻辑。
  • 冗余的判断条件:直接判断首页就行,不用硬写死域名。

修正后的代码

情况1:重定向静态首页

如果你的首页是设置的静态页面,用这个代码:

<?php
add_action( 'wp', 'redirect_to_google' );
function redirect_to_google() {
    // 判断是否是静态首页
    if ( is_front_page() ) {
        $target_url = 'http://www.google.com';
        // 301永久重定向(如果是临时重定向改成302)
        wp_redirect( $target_url, 301 );
        exit; // 终止后续代码执行,确保重定向生效
    }
}
?>

情况2:重定向博客首页

如果你的首页是默认的博客文章列表页,把is_front_page()换成is_home()就行:

<?php
add_action( 'wp', 'redirect_to_google' );
function redirect_to_google() {
    if ( is_home() ) {
        $target_url = 'http://www.google.com';
        wp_redirect( $target_url, 301 );
        exit;
    }
}
?>

额外注意事项

  • 清除缓存:如果你用了缓存插件(比如WP Rocket、W3 Total Cache)或者服务器有缓存,一定要清除缓存后再测试,不然旧的页面缓存会让重定向不生效。
  • 检查插件冲突:有些SEO插件或者重定向插件可能会覆盖你的自定义代码,暂时禁用其他重定向相关插件试试。
  • HTTPS适配:如果你的网站用了HTTPS,目标URL最好也用HTTPS版本(https://www.google.com),避免混合内容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 03:07:37