我已经搜索到互联网的末端,似乎无法找到任何可以帮助我解决问题的方法。我有一个wordpress站点(继承),我只是希望能够在登录时获取用户的信息。从我看到的文档中使用get_currentuserinfo()但是当我尝试使用它时,我什么也得不到。
该文件位于我的主html目录中的文件夹中。以下是内容:
<?php
include_once("../wp-includes/pluggable.php");
global $current_user;
get_currentuserinfo();
echo $current_user->user_login;
?>
我真的对此失去了理智。我还需要在顶部包含其他内容吗?我是否必须在wordpress中创建页面?
答案 0 :(得分:2)
你必须包含wp-load.php
才能在wordpress外的php文件中使用wordpress功能
require_once("/path/to/wordpress/wp-load.php");
global $current_user;
get_currentuserinfo();
echo $current_user->user_login;
答案 1 :(得分:0)
注意:如果您在插件加载时调用get_currentuserinfo(),由于尚未定义,因此无法正常工作。该特定函数在pluggable.php中定义,在插件加载后加载。所以你的问题可能就在其中。所以请检查你的pluggable.php
您也可以使用&#34; wp_get_current_user();&#34; 代替&#34; get_currentuserinfo();&#34;。使用方法&#34; wp_get_current_user();&#34;在下面提到。for more reference
<?php
$current_user = wp_get_current_user();
/**
* @example Safe usage: $current_user = wp_get_current_user();
* if ( !($current_user instanceof WP_User) )
* return;
*/
echo 'Username: ' . $current_user->user_login . '<br />';
echo 'User email: ' . $current_user->user_email . '<br />';
echo 'User first name: ' . $current_user->user_firstname . '<br />';
echo 'User last name: ' . $current_user->user_lastname . '<br />';
echo 'User display name: ' . $current_user->display_name . '<br />';
echo 'User ID: ' . $current_user->ID . '<br />';
?>