WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

Как получить nicename или login пользователя в комментарии?

Доброго времени суток!

Я в форме комментария сделал ссылку на профиль комментатора, то есть, тот кто пишет коммент, в его display_name указывается ссылка на профиль, но display_name может быть как логином, так и имя и фамилия, что для ссылки профиля становится не правильной.

Насколько я понял, внутри комментария можно получить ID пользователя и его display_name, но нельзя получить login или user_nicename.

Использую такой код:

echo get_userdata( $comment->user_id )->user_nicename;

Проблема в том, что выдается ошибка: Trying to get property 'user_nicename' of non-object
Но при этом выводится то, что мне нужно. Пробовал определять ID комментатора и подставлять user_nicename, но все равно ругается на выше обозначенную ошибку.

Есть ли способ вывести логин комментатора, без такой ошибки?

PS РЕШЕНО))
В общем случайно увидел, что в записи был комментарий от гостя и не было проверки на этот счет, отсюда скрипт не мог получить его данные.
Вот если кому пригодится проверка:

<?php
if ( empty( $comment->user_id ) ) {
	echo get_comment_author();
} else {
	echo get_userdata( $comment->user_id )->user_nicename;
}
?>
0
Алекс
19 апреля 2020

Нет ответов на этот вопрос.

    На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация