首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >wordpress不使用wp-load.php获取当前用户

wordpress不使用wp-load.php获取当前用户
EN

Stack Overflow用户
提问于 2012-02-08 04:33:03
回答 1查看 2.4K关注 0票数 2

我目前正在尝试在我的网站上写一些不属于wordpress站点的页面,但我希望能够使用wordpress用户。我使用以下代码实现了这一点

代码语言:javascript
复制
require_once("../../../wp-load.php");
$current_user = wp_get_current_user();

现在,我可以将$current_user变量用于我需要的所有内容。但是,因为我包含了wp-load.php文件,所以有很多我实际上不需要的开销。

我的问题是,我如何才能在不包含wp-load的情况下获得当前的wordpress用户?

我不介意自己包含一些额外的文件,但我真的不需要也不想在每次调用这个页面时设置整个wp环境,这样我才能获得用户。

EN

回答 1

Stack Overflow用户

发布于 2012-02-08 16:14:15

你在那些页面上做什么?我之所以这样问,是因为如果你想通过ajax发送一些帖子,你应该检查一下this

如果你不使用ajax,但你只需要一些可以访问Wordpress函数的页面,那么你必须以某种方式包含wp-load,因为这个文件正在加载Wordpress。

我建议在您的主题文件夹中创建一个名为page-custom-name.php的文件,并发布一个标题为"Custom-name“的空白页面。现在,当您访问www.yoursite/custom-name时,您将看到该页面,您可以获取当前用户信息,或访问其他Wordpress功能。

稍后编辑:

这个想法是部分解决方案:使用钩子怎么样?

在您的functions.php中放入以下几行:

代码语言:javascript
复制
add_action('wp_login', 'aboutuser');

function aboutuser($username, $user)
{
  $userObject = $user;

  //find a solution to send this data to your url of your application
}

基本上,当用户登录Wordpress时,aboutuser()函数会被执行,它会得到2个参数(在Wordpress 3.3中;在早期版本中,它只会得到用户名)。

现在,当用户登录时,我们可以访问wp用户对象。也许有一种方法可以将这些数据( POST请求)传递给您的应用程序,并将其存储在会话中。

不过,我不确定这是否可能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9183426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档