我搜索了Stack Overflow网站以获得正确的答案(有效),但不幸的是没有任何工作…
这是个简单的问题,我只需要输出当前用户的用户名!
我在stackoverflow上找到了如下代码:
<?php
$user_id = get_current_user_id();
echo "ID User : ".$user_id ;
if ($user_id == 0) {
echo 'You are currently not logged in.';
} else {
echo 'You are logged in as user '.$user_id;
}
?>
^^在本站找到
当我这样做时,我得到一个错误:
致命错误:调用未定义函数get_current_user_id() in/home/heal_public_html/mysite.com/index.php第14行
我使用的是wordpress 3.3.1版本
我认为你需要访问全局变量,为此你需要在新页面中加载wordpress。
if ( !defined('__DIR__') ) define('__DIR__', dirname(__FILE__)); //getting current directory using magic constants __DIR__ is deprecated in php 5.3.+
$path = explode('wp-content',__DIR__); //getting main web root path for including further files.
include_once($path[0].'wp-load.php'); //for getting global variables like wpdb
global $current_user;
echo $current_user->user_login;
添加以上内容后,您现在可以访问全局变量。User_login将打印用户名。我希望这对你有所帮助。我也同意@j3frea的观点。在这里,我已经向您展示了我试图实现插件的提示,所以我使用'wp-content'展开它。
At http://codex.wordpress.org/Function_Reference/get_currentuserinfo
它表明你正在寻找$current_user->user_login
它们的默认示例是:
<?php global $current_user;
get_currentuserinfo();
echo 'Username: ' . $current_user->user_login . "'n";
echo 'User email: ' . $current_user->user_email . "'n";
echo 'User first name: ' . $current_user->user_firstname . "'n";
echo 'User last name: ' . $current_user->user_lastname . "'n";
echo 'User display name: ' . $current_user->display_name . "'n";
echo 'User ID: ' . $current_user->ID . "'n";
?>
我必须承认,如果你得到Call to undefined function get_current_user_id()
,那么更有可能是wordpress没有正确安装或其他性质的东西。
我想知道你为什么要编辑index.php
-> wordpress为你做前端的东西,也许你应该看看主题