【问题标题】:Wordpress Plugin Redirect, Header already sent [closed]Wordpress 插件重定向,标头已发送 [关闭]
【发布时间】:2017-02-21 21:25:15
【问题描述】:

使用此标题已在页面加载时创建,我希望所有非登录用户重定向到主网站链接。

[21-Feb-2017 21:20:40 UTC] PHP 警告:无法修改标头 信息 - 已发送的标头(输出开始于 /mnt/stor1-wc2-dfw1/462870/524120/sandata.didit-dev.com/web/content/wp-content/themes/Joints 主题/header.php:3) 在 /mnt/stor1-wc2-dfw1/462870/524120/sandata.didit-dev.com/web/content/wp-includes/pluggable.php 在第 1179 行

include_once(ABSPATH . 'wp-includes/pluggable.php');

function hook_diditdev(){
    if(!is_user_logged_in()){
        wp_redirect( get_option('live_site_link') ); exit();
    }
}
add_action('wp_head', 'hook_diditdev');

【问题讨论】:

标签: php wordpress redirect header


【解决方案1】:

您可以在process 中更早地执行此操作,例如使用“wp_loaded”挂钩:

function hook_diditdev(){
    if(!is_user_logged_in()){
        wp_redirect( get_option('live_site_link') ); exit();
    }
}
add_action('wp_loaded', 'hook_diditdev');

或者,如果你不能及早获得钩子,你总是可以使用 javascript 重定向...不是那么优雅,页面将开始加载然后重定向,但有时这是你唯一的选择:

function hook_js_redirect(){
    if($i_need_to_redirect){
        echo '<script> window.location = "'.get_option('live_site_link').'"; </script>';
        exit();
    }
}

希望这会有所帮助!

【讨论】:

    猜你喜欢
    • 2015-11-15
    • 1970-01-01
    • 2016-12-12
    • 2019-10-09
    • 2011-10-04
    • 1970-01-01
    • 2011-04-24
    • 2016-05-18
    • 1970-01-01
    相关资源
    最近更新 更多