获取当前用户名在一个空白的php页面(wordpress)


Get current username in a blank php page (wordpress)

我搜索了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为你做前端的东西,也许你应该看看主题