сравнение имени пользователя и настраиваемого поля в WordPress - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь показать сообщение в соответствии с зарегистрированным пользователем и значением настраиваемого поля. Если вошедший в систему пользователь и значения настраиваемых полей совпадают, то должно отображаться «эта страница назначена для вас»

в противном случае должно отображаться "эта страница НЕ назначена для вас"

Мой код для этого:

global $wp_query;
$postid = $wp_query->post->ID;
$getClient = get_post_meta($postid, 'clientName', true);
echo 'Client is : '.$getClient;

$current_user = wp_get_current_user();
echo '<br/>Username: ' . $current_user->user_login . '<br />';

if ($getClient !== $current_user){
    echo 'this page is NOT assigned for you';
}
else {
    echo 'this page is assigned for you';
}

когда я захожу на страницу и если значения имени пользователя и настраиваемого поля совпадают, это показывает:

Client is : cd_riffaz
Username: cd_riffaz
this page is NOT assigned for you

На самом деле должно отображаться "this page is assigned for you", верно? потому что значения идентичны.

Почему это не работает, как ожидалось?

1 Ответ

0 голосов
/ 04 мая 2018

Вы сравниваете объект ($current_user) со строкой $getClient.
Вы должны сделать if ($getClient !== $current_user->user_login)

P.S. Вы можете сделать global $current_user; вместо $current_user = wp_get_current_user();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...