2012-11-16 40 views
2

我從WP鏈接到非wp頁面。我如何找到登錄到wp的用戶名?這不起作用。如何在非wp頁面找到當前wordpress用戶的名字

<?php 
    require_once("../members/wordpress/wp-load.php"); 


if(is_user_logged_in()) 
{ 
    echo '<br />User Logged in ok<br />'; 
    echo 'User ID is: '.$user_ID.'<br />'; 
    echo 'User login is: '.$current_user->user_login.'<br />'; 
} 
else 
    echo 'No user is logged in<br/>'; 

?>

回答

0

這很好。

在Wordpress中,我保存了一個cookie。然後在非WordPress的頁面時, DOCTYPE行之前,我把這個代碼:

<?php 
    session_start(); 
    $name = $_SESSION['member_name']; 
    if ($name == '') { 
     header('Location: searchObits.php'); 
     exit; 
    } else { $_SESSION["ismember"] = "member"; } 
?> 
0

嘗試

wp_get_current_user(); 

文檔指出這是get_currentuserinfo的包裝()。

所以,試試這個;

<?php 
    $current_user = wp_get_current_user(); 
    if (0 == $current_user->ID) { 
     // Not logged in. 
    } else { 
     // Logged in. 
    } 
?> 

如果由於您處於非wp頁面而不起作用。嘗試用get_currentuserinfo()替換wp_get_current_user()。

+0

如果非WordPress的網頁你的意思是被服務的頁面不是從一個WordPress來安裝那麼WP功能不去上班。 – AndyWarren

+0

提問者說,這是一個非WP頁面,我的理解方式與你所做的一樣。因此,我提供了另一個解決方案(get_currentuserinfo())php函數。 –

+0

我在一個非wp頁面上。我在該頁面的開頭處放置了以下內容: – bobonwhidbey

0

您的非wp頁面不在WP文件夾中,因此無法訪問WP cookie。如果你想通過位於WP文件夾之外的php腳本來看WP cookie,需要定義COOKIEPATH指向你的wp文件夾的php腳本&的常見父文件夾,或者將它指向根文件夾。 把下面一行在您的wp-config.php文件:

define('COOKIEPATH', '/'); 

PS:還有你的非WP頁面應該從同一個域WP送達。

相關問題