HidePost
Плагин для скрытия части поста или ссылок от незарегистрированного посетителя блога. В большинстве случаев данная функциональность используется варезными сайтами для скрытия ссылок на скачивание файлов. Зачем это делается мне не совсем понятно, но раз людям нужны насильно зарегистрированные пользователи на сайте, то почему бы и нет? Для WordPress существует всего несколько плагинов подобного типа и HidePost наиболее функциональный из всех. Только вот, к сожалению, и он имеет недостатки, хотя в целом использовать его по назначению можно.
Скачиваем последнюю версию плагина и устанавливаем:
1. Распаковываем архив.
2. Копируем папку hidepost в /wp-content/plugins/.
3. Заходим в админку блога на вкладку "Плагины" и активируем плагин.
Плагин активирован, но пока что не работает. Переходим в "Параметры\HidePost". Для включения плагина ставим галку на
Крайне не советую пользоваться функцией "Protect Link" (автоматическое скрытие ссылок в вашей записи). Даже в самой простой записи (проверял на этом блоге) есть достаточное количество ссылок, чтобы автоматическая замена их на текст "вы должны зарегистрироваться для просмотра" превращала текст записи в полную мешанину, которую невозможно читать. Плюс оформить текст замены нет никакой нормальной возможности, так как ссылка может быть в начале записи, в середине абзаца, между скобок и тд и тп. То есть выделять этот текст красиво оформленным через css блоком нельзя - напрочь "посыплется" оформление текста записи. Ну и конечно самая важная вещь, из-за которой автоматическим скрытием ссылок пользоваться невозможно - нет никакого способа запретить плагину не скрывать определенную ссылку. Получилось так, что у меня при показе маленькой фотки ссылка на большую фотку (на этом же сайте) оказалась скрыта плагином. Проще уж скрыть всю часть статьи после вводного абзаца, чем разукрашивать пост десятком надписей "вы должны зарегистрироваться для просмотра".
Еще одним неприятным моментом плагин отличился, когда я попытался скрыть текст ото всех, кроме определенной группы пользователей. А в частности я попытался организовать скрытие текста ото всех групп пользователей, кроме администраторов. У меня ничего с этим не вышло, такое впечатление, что плагин напрочь игнорирует указанный в теге [hidepost=level] уровень доступа.
Понравилась опция Allow bot, которая позволяет поисковикам индексировать спрятанный от незарегистрированных посетителей текст. Скрываем часть контента, но не в ущерб SEO-оптимизации. Правда, формально это грозит баном от поисковиков: подсовывать посетителям и поисковикам разный контент категорически запрещается. Правда, в данном случае я не совсем уверен, ведь все-таки поисковик получает то, что видит и любой зарегистрированный пользователь. Но рисковать я бы не стал, забанят и доказывай потом, что ты это сделал без злого умысла.
Так как ни автоматическим скрытием ссылок, ни опцией скрытия от определенных групп пользователей мы пользоваться не будем, то и настраиваем только одно текстовое поле "Protect content show text:" (показываемый текст на месте скрытой части записи). Сразу предупрежу, данная настройка не годится, если вы планируете прятать часть предложения в абзаце, например. Так как я предлагаю вариант блочного оформления текста замены, а это значит что все строки или абзацы будут разорваны. Так что при написании поста сразу учитывайте, какая его часть пойдет под скрытие и соответствующим образом ее оформляйте (примеры: вводный абзац <p></p>, остальное скрыто; полный текст статьи, последний абзац <p></p> с ссылками скрыт).
Вставляем в "Protect content show text:" примерно следующую фразу:
<div class="hidepost"><p>Для просмотра скрытой части статьи или ссылок вы должны %login% или %register% на сайте.</p></div>
Оформляем блок с помощью css (файл style.css вашей темы):
#content .hidepost { background: #FFFBCC; margin: 5px 0px 10px 0px; padding: 5px 5px 5px 5px; border-bottom: 1px solid #E6DB55; border-top: 1px solid #E6DB55; border-left: 1px solid #E6DB55; border-right: 1px solid #E6DB55; } #content .hidepost p{ font-family: Verdana, Serif; text-align: justify; margin: 0px 0px 0px 0px; padding: 0px 0px 0px 0px; }
Осталась самая малость. Эти самые %login% и %register% дают ссылку на авторизацию и регистрацию, но вот анкоры для них плагин ставит сам, поэтому их надо перевести на русский язык. Открываем файл hidepost.php и редактируем его на предмет перевода английских слов:
14 15 | $the_text = str_replace('%login%','<a href="'.get_bloginfo('url').'/wp-login.php'.'">авторизироваться</a>',$the_text); $the_text = str_replace('%register%','<a href="'.get_bloginfo('url').'/wp-login.php?action=register'.'">зарегистрироваться</a>',$the_text); |
Теперь наш блок выглядит в стиле WordPress примерно так:

Но вы, конечно, можете его оформить как угодно с помощью css.
Автор плагина:
Страница плагина:
Рассматриваемая версия: 2.3.7 от 19.05.2009
Совместимость с версией WordPress: 2.2 и выше.
Рекомендую также:

#31, 26 февраля, 2010 в 12:03
плин, я не понимаю, что так сложно в примитивном плагине разобраться?
1. активируете плагин
2. ставите галку на Enable Hidepost
3. заходите в редактирование статьи и берете часть статьи в теги [hidepost] [/hidepost]
4. разлогиниваетесь и видите, что часть статьи скрыта с текстом по умолчанию.
5. заменяете текст по умолчанию на тот, что вам подходит.
что в этих 5-х шагах может быть непонятного? думаете мне приятно по десятому разу устанавливать уже рассмотренные и детально описанные плагины только, чтобы убедиться в том, что статья все еще актуальна?
#32, 26 февраля, 2010 в 12:15
В том то проблема что не виден текст по умолчанию... Просто пропалает ссылка... И по коментам видно, что не только у меня такая проблема. Но все равно спасибо за помощь и плагин... Буду разбираться...
#33, 26 февраля, 2010 в 12:24
еще раз - перед просмотром статьи со скрытым текстом вы разлогинились в блоге?
#34, 14 марта, 2010 в 03:37
У плагина проблема с русским. Меняю, предложенный здесь текст, на оригинал - уведомление об авторизации/регистрации появляется. Но на английском.
#35, 14 марта, 2010 в 09:53
а в плагине вы этот текст перевели? а то ведь ясно видно на скриншоте, что перевод вполне работает.
#36, 14 марта, 2010 в 15:48
Проблема не со словами - логин, регистрация. Проблема с любым русским словом, которое вводится в поле Protect Content with Role: плагина. Русские буковки просто не отображаются.
Так-же заметил ещё одну странную вещь. В анонсе, на главной странице, можно спокойно слушать аудио вставки (хотя они сидят за . Залогиниться плагин просит только когда переходишь в сам пост. Даже не догадываюсь, почему это происходит.
#37, 14 марта, 2010 в 15:50
*сидят за
#38, 15 марта, 2010 в 18:41
не могу помочь, с показом скрытой части статьи только определенных ролям сплошной гиммор - я предпочитаю просто без ролей скрывать текст для незарегистрированных.
потому что в шаблоне используется нестандартный вывод текста статьи? потому как в плагине зашит код:
то есть на теги скрытия проверяется и текст статьи и анонс статьи.
#39, 15 марта, 2010 в 19:56
Может добавит в плагин the_anonce например? Не знаю как главная будет прописываться в таком виде (
#40, 15 марта, 2010 в 20:02
может - только вот мне то неизвестно, что за функция у вас выводит анонсы на главной странице.
#41, 5 июля, 2010 в 09:52
Спасибо, как раз то, что искал