使用php可以確定我的網站的訪問者是否登錄到我的網站的wordpress區域。如何從wordpress以外的地方確定訪問者是否登錄到Wordpress
通過這個我的意思是我的網站(有註冊)的wordpress區域是在例如example.com/members/
。
我想從example.com/offers.php
知道他們是否登錄到wordpress區域example.com/members
。
使用php可以確定我的網站的訪問者是否登錄到我的網站的wordpress區域。如何從wordpress以外的地方確定訪問者是否登錄到Wordpress
通過這個我的意思是我的網站(有註冊)的wordpress區域是在例如example.com/members/
。
我想從example.com/offers.php
知道他們是否登錄到wordpress區域example.com/members
。
確定什麼,似乎被人忽略的是,試圖從不同的文件夾的安裝位置的WordPress然後用下面的代碼無法正常工作訪問WordPress的時... is_user_logged_in()將始終返回false。
<?php
define('WP_USE_THEMES', false);
Include_once($_SERVER['DOCUMENT_ROOT'] . '/members/wp-load.php');
if (is_user_logged_in()) {echo ' You are currently logged in.'. '<br />';}
else
{ echo ' You are currently not logged in.'. '<br />';}
?>
我設法找到一個解決方法,對我來說至少可以工作。 我正在構建一個html頁面,需要測試用戶是否登錄到我網站上的wordpress區域。所以我所做的就是把上面的測試放到wordpress文件夾中的文件中。然後在我的html中簡單地使用IFrame,因爲它的src = wordpress文件夾中的文件。然後,根據用戶正在登錄或退出,迴應出需要什麼。
可能是一個馬虎的解決方案,但至少它的作品。
你也可以在外面使用WordPress的功能。只需在您的安裝路徑中包含wp-load.php。
使用get_currentuserinfo()獲取登錄用戶的用戶數據。
// Include the wp-load'
include('YOUR_WP_PATH/wp-load.php');
if (is_user_logged_in()) {
global $current_user;
get_currentuserinfo(); // to get currently logged in user data
echo 'Username: ' . $current_user->user_login . "\n";
echo 'User email: ' . $current_user->user_email . "\n";
}else{
echo "User not logged in";
}
我想這會幫助你:http://wordpress.stackexchange.com/questions/105736/how-to-get-login-data-session-outside-wordpress –
我真的很掙扎。我已經嘗試了所有我發現的嘗試,並讓它在沒有成功的情況下發揮作用。 get_current_user_id();總是返回0. 這個問題似乎是我的WordPress的是在文件夾mydomain.com/members/ 我想通過PHP訪問,看看是否有人從我的public_html根(例程caled mydomain的php例程登錄。 com/offers.php) – WJN
我發現各種文章說這個問題是與cookie相關的。說我應該添加到我的wp-config.php define('COOKIEPATH','/'); define('SITECOOKIEPATH','/'); 我在*之前添加了這一切,停止編輯!開心博客。 */ 如果我註銷,我無法再重新登錄! 我使用插件主題我的登錄添加登錄或註銷到我的導航菜單。 – WJN