2016-09-22 129 views
0

我能夠與Facebook的JavaScript SDK和存儲成功FB的登錄信息到WP_user表上申請,但進一步的它不重定向到登陸頁面無法Facebook登錄後重定向

這是SUCESSFUL FB登錄後,我的代碼

$info1 = array(); 
    $info1['user_login'] = $info['user_login']; 
    $info1['user_password'] = $info['user_pass']; 
    $info1['remember'] = true; 

    $user = wp_signon($info1, false); 


     echo json_encode(array('loggedin'=>true, 'message'=>__($login.' successful, redirecting...'))); 
     wp_redirect(home_url()); 

這是對的header.php代碼檢查,如果用戶在

<?php if (is_user_logged_in()) { ?> 
<a href="<?php echo wp_logout_url(home_url()); ?>">Logout</a> 
<?php } else { 

?>    
     <a>Login</a> 
     <a>register</a> 

<?php } ?> 

記錄:我也想多了一個腳本,用於登錄着陸頁並顯示歡迎

用戶登錄

   <?php 

// Enter the app id and secret below 
define('YOUR_APP_ID', 'xxxxxxxxxxxx'); 
define('YOUR_APP_SECRET', 'xxxxxxxxxxx'); 

function get_facebook_cookie($app_id, $app_secret) { 
    $args = array(); 
    parse_str(trim($_COOKIE['fbs_' . $app_id], '\\"'), $args); 
    ksort($args); 
    $payload = ''; 
    foreach ($args as $key => $value) { 
    if ($key != 'sig') { 
     $payload .= $key . '=' . $value; 
    } 
    } 
    if (md5($payload . $app_secret) != $args['sig']) { 
    return null; 
    } 
    return $args; 
} 

$cookie = get_facebook_cookie(YOUR_APP_ID, YOUR_APP_SECRET); 
//$user = json_decode(file_get_contents('https://graph.facebook.com/me?access_token='.$cookie['access_token'//]) 

$user = viacurl('https://graph.facebook.com/me?access_token='.$cookie['access_token']); 

function viacurl($location){ 
    $ch = curl_init(); 

    curl_setopt($ch, CURLOPT_URL, $location); 
    curl_setopt($ch, CURLOPT_HEADER, false); 

    $out=curl_exec($ch); 

    curl_close($ch); 

    return rtrim($out,1); 
} 

//); 

?> 

    <div id="fb-root"></div> 
    <?php 

    print_r($user); 

    if ($user->id) { ?> 
     <p>Welcome <?= $user->name ?></p> 
    <?php } else { ?> 
     <script src="http://connect.facebook.net/en_US/all.js"></script> 
     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> 

     <script> 
     FB.init({ 
      appId:<?php print YOUR_APP_ID; ?>, cookie:true, 
      status:true, xfbml:true 
     }); 
     </script> 
     <fb:login-button>Login to Eureka!</fb:login-button> 
    <?php } ?> 


    </div> 

之後但這似乎也已廢棄

我看到一些帖子中,有人說,WordPress的採取會議本身的照顧。

我需要使用PHP的會話或WordPress的可以做到這一點對自己?請建議,如果失去了一些東西......

回答