Как отображать контент для пользователей, которые не вошли в систему, вместо 404 в личных пользовательских сообщениях?


Я хочу отобразить сообщение типа "Вы должны войти в систему, чтобы просмотреть это", с частными пользовательскими сообщениями. Теоретически я хочу использовать что-то вроде этого:

if (is_user_logged_in()) {
// Page code goes here
}
else {
echo "You must be logged in to view this page.";
}

Этот код находится в single-custom.php шаблон страницы.
Случай true работает просто отлично. Однако, если пользователь не вошел в систему, вместо того, чтобы видеть "Вы должны войти в систему..." Вместо этого я получаю 404? Что я делаю не так?

Author: gillespieza, 2011-02-09

1 answers

Вы делаете это внутри Цикла? Я бы сам попробовал что-то подобное:

if ($post->post_status == "private" && !is_user_logged_in()) {
    echo "You must be logged in to view this page.";
} else if( $post->post_status == "private" && is_user_logged_in() ) {
    // Page code goes here
}
 1
Author: editor, 2011-02-09 21:58:03