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

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

17 июня 2014 283

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

ThemeForest: Лучшие темы для WordPress
ThemeForest: Лучшие темы для WordPress

Для 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.

Комментарии

Разгоните свой WordPress

Хостинг-провайдер номер один в России — REG.RU

Подробнее