如何从wordpress外部确定访问者是否登录到Wordpress

时间:2016-10-01 01:08:12

标签: php wordpress

使用php可以确定我网站的访问者是否登录到我网站的wordpress区域。

我的意思是我的网站(已注册)的wordpress区域就是example.com/members/

我想知道example.com/offers.php是否已登录wordpress区域example.com/members

2 个答案:

答案 0 :(得分:0)

您也可以在外面使用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";
}

答案 1 :(得分:0)

好的,似乎被忽略的是,当尝试从另一个文件夹访问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文件夹中的WAS文件中。然后在我的html中使用了一个IFrame,因为它使用了src = wordpress文件夹中的文件。然后根据登录或注销的用户回应需要的内容。

可能是一个草率的解决方案,但至少它是有效的。