WordPress: показываем контент только зарегистрированным или только незарегистрированным пользователям
Если на WordPress-сайте открыта свободная регистрация для посетителей, то есть возможность простым способ реализовать показ части контента только зарегистрированным пользователям, например, какую-то ссылку.
Реализуется это следующим образом. В файл functions.php
вставляем следующий код:
add_shortcode('member', 'member_check_shortcode');
function member_check_shortcode( $atts, $content = null ) {
if ( is_user_logged_in() && !is_null( $content ) && !is_feed() )
return $content;
return '';
}
После этого в тексте статьи используем следующую конструкцию:
[member]
Это текст, который будет показан только зарегистрированным пользователям.
[/member]
Обновление 06.05.10
Теперь рассмотрим обратную ситуацию – когда нужно показывать текст только незарегистрированным пользователям.
В файл functions.php
добавляем следующую функцию:
add_shortcode('guest', 'guest_check_shortcode');
function guest_check_shortcode( $atts, $content = null ) {
if ( !is_user_logged_in() && !is_null( $content ) && !is_feed() )
return $content;
return '';
}
И в тексте статьи используем такую конструкцию:
[guest]
Это текст, который будет показан только незарегистрированным пользователям.
[/guest]
Комментарии (2)
А плагин посоветуете какой-то?
Спасибо код работает!
А как сделать чтоб контент прятался, и был написан текст данная часть материала доступна зарегистрированным (и ссылка на регистрацию)?