2017-02-21 1 views
-2

이 헤더를 사용하여 페이지로드시 이미 생성되었으므로 로그인하지 않은 모든 사용자가 기본 웹 사이트 링크로 리디렉션하도록하십시오.Wordpress Plugin 리디렉션, 헤더가 이미 전송되었습니다.

[21 2 월 - 2017 세계 협정시 21시 20분 40초] PHP 경고 : 헤더에게 정보를 수정할 수 없습니다 - 이미가 보낸 헤더 (출력 에서 시작을/mnt/stor1-WC2 - dfw1/524,120분의 462,870/sandata.didit-dev.com/web/content/wp-content/themes/Joints 테마/header.php : 3) in /mnt/stor1-wc2-dfw1/462870/524120/sandata.didit-dev.com 당신은에 이전을 할 수있는 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'); 
+0

[PHP에서 "헤더가 이미 전송되었습니다"오류를 해결하는 방법] (http://stackoverflow.com/questions/8028957/how-to-fix-headers-already-sent-error-in-php) – miken32

+0

다른 문제 .. – vico

답변

1

라인 /web/content/wp-includes/pluggable.php 후크 예를 들어 "wp_loaded"을 사용하여 0 :

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

다른 방법으로, 조기에 후크를 얻을 수없는 경우, 당신은 항상 우아하지 자바 스크립트를 ... 사용하여 리디렉션 할 수 있습니다, 페이지가로드되기 시작합니다 리디렉션 할 수 있지만 때로는 유일한 옵션입니다.

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

희망이 있습니다.

+0

wp_loaded 작품입니다. – vico

관련 문제