Я хочу отображать для пользователей после входа в систему вместо слова по умолчанию Моя учетная запись Я хочу отображать имя пользователя, я пробовал этот код, но он ничего не отображает!
Кажется, он не распознал переменную $current_user
в файле, расположенном по адресу: wp-content / themes / themeName / framework / functions / woo-account.php
printf( __( '%s', 'wpdance' ),$current_user->user_lastname);
это было:
printf( __( 'My Account', 'wpdance' ));
И я пытался также получить все, используя этот код:
<?php global $current_user;
get_currentuserinfo();
echo 'Username: ' . $current_user->user_login . "\n";
echo 'User email: ' . $current_user->user_email . "\n";
echo 'User level: ' . $current_user->user_level . "\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";
?>
Но User first name:
а также User last name:
были пустыми!
Есть ли у кого-нибудь предложение или идея?
Заранее благодарю!
Лучший способ — это использовать wp_get_current_user()
(нет необходимости в какой-либо глобальной переменной) и условно, чтобы убедиться, что пользователь вошел в систему:
if ( is_user_logged_in() ) {
$user_info = wp_get_current_user();
$user_last_name = $user_info->user_lastname;
printf( __( '%s', 'wpdance' ), $user_last_name );
}
Или с полным именем:
if ( is_user_logged_in() ) {
$user_info = wp_get_current_user();
$user_complete_name = $user_info->user_firstname . ' ' . $user_info->user_lastname;
printf( __( '%s', 'wpdance' ), $user_complete_name );
}
Рекомендации:
Попробуйте позвонить
global $current_user;
get_currentuserinfo();
до
printf( __( '%s', 'wpdance' ),$current_user->user_lastname);
Увидеть https://codex.wordpress.org/Function_Reference/get_currentuserinfo#Examples
И вы уверены, что фамилия всегда установлена? Вероятно, вы можете убедиться $current_user
работает, если $current_user->ID
по крайней мере, возвращает значение.
И включите отладку в вашем wp_config.php
может также помочь отобразить все уведомления и ошибки:
define( 'WP_DEBUG', true );