Получить текущее имя пользователя на пустой странице php (wordpress) - PullRequest
2 голосов
/ 04 января 2012

Я искал веб-сайт 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 () в /home/heal/public_html/mysite.com/index.php в строке 14

Я использую WordPress версии 3.3.1

Ответы [ 2 ]

5 голосов
/ 04 января 2012

Я думаю, вам нужен доступ к глобальным переменным, и для этого вам нужно загрузить 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».

2 голосов
/ 04 января 2012

В 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 делает интерфейс для вас, возможно, выдолжен смотреть на них.

...