Скрытый текст в WordPress с помощью шорткода без плагинов

Опубликовано 10 лет назад

Не секрет, что зарегистрированные пользователи вашего сайта являются наиболее ценными посетителями. И было бы неплохо как-то вознаградить их за лояльность к вам. Один из самых простых способов — это публикация какого-то полезного контента, доступного только зарегистрированным и авторизованным пользователям.

Для WordPress существует масса плагинов реализующих данную возможность. Некоторое время назад я уже рассказывал о подобном плагине. Сегодня же я расскажу как можно быстро без плагинов ввести в WordPress шорткод, с помощью которого вы сможете ограничивать доступ к контенту.

Мой сниппет очень прост. Используя стандартную функцию WordPress is_user_logged_in(), он проверяет вошел ли пользователь в систему. Также мы проверяем, не пустое ли содержание и не отображаются ли оно в RSS-ленте.

Как интегрировать шорткод на сайт

Добавьте ниже опубликованный код в ваш функциональный плагин или файл functions.php вашей активной темы. Будет зарегистрирован новый шорткод под названием members_only.

add_shortcode( 'members_only', 'members_only_shortcode' );
function members_only_shortcode( $atts, $content = null ) {
if ( is_user_logged_in() && !empty( $content ) && !is_feed() ) {
return $content;
}
return 'Чтобы увидеть скрытый контент, вы должны быть зарегистрированы и авторизованы.';
}

Теперь вы можете использовать зарегистрированный шорткод members_only непосредственно в теле записи или страницы.

[members_only]
Display this content only for users which are logged in.
[/members_only]

Обратите внимание на то, чтобы имя шорткода было уникальным. Особенно это касается премиум-шаблонов и плагинов использующих шорткоды. Избегайте дублирования.

Фото: Shemer — Creative Commons / flickr.com

Иван Данилин
Автор Иван Данилин

Фулстек веб‑разработчик, специализируюсь на платформе WordPress

Подробнее
Добавить комментарий