WordPress Support

Плагин "HidePost" для скрытия части статьи или ссылок в блоге.

Добавлено 23 января 2010 в категорию Плагины.

Плагин для скрытия части поста или ссылок от незарегистрированного посетителя блога. В большинстве случаев данная функциональность используется варезными сайтами для скрытия ссылок на скачивание файлов. Зачем это делается мне не совсем понятно, но раз людям нужны насильно зарегистрированные пользователи на сайте, то почему бы и нет? Для 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.

 

Автор плагина: Fu4ny

Страница плагина: [ссылка]

Рассматриваемая версия: 2.3.7 от 19.05.2009

Совместимость с версией WordPress: 2.2 и выше.

Плагин WordPress "WP-PageNavi" для создания удобной постраничной навигации.

Добавлено 23 января 2010 в категорию Плагины.

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

После установки плагина мы получим такое:

После небольшого изменения кода плагина увидим:

И теперь с помощью изменения css мы можем изменить эту панельку как угодно, например, так:

Скачиваем оригинальный плагин с его домашней страницы или берем русскую версию у Dimox‘а и устанавливаем:

1. Распаковываем архив.

2. Копируем папку wp-pagenavi в /wp-content/plugins/.

3. Заходим в админку блога на вкладку "Плагины" и активируем плагин.

Чтобы включить отображение работы плагина открываем те файлы вашего шаблона, где используется вывод навигации. Находим там строчки (на примере шаблона Default):

<div class="navigation">
	<div class="alignleft"><?php next_posts_link(__('&laquo; Older Entries', 'kubrick')) ?></div>
	<div class="alignright"><?php previous_posts_link(__('Newer Entries &raquo;', 'kubrick')) ?></div>
</div>

И заменяем их на:

<?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?>

Теперь постраничная навигация у вас работает. Перевести или задать надписи можно в админке блога на вкладке ПараметрыPageNavi. Если у вас есть желание задать именно те настройки, что использовал я (и какие показаны на скриншотах), то введите следующее:

Text For Number Of Pages ("Страница x из x", можно вообще удалить)

Страница %CURRENT_PAGE% из %TOTAL_PAGES%

Text For Current Page (Текущая страница, показываем просто ее номер)

%PAGE_NUMBER%

Text For Page (Текст остальных страниц, тоже показываем только их номер)

%PAGE_NUMBER%

Text For First Post (Первая страница, естественно "1")

1

Text For Last Post (Последняя страница, естественно это число всех страниц)

%TOTAL_PAGES%

Text For Next Post (Следующая страница, показываем стрелку)

Text For Previous Post (Предыдущая страница, показываем стрелку)

Text For Next … (Троеточие у ссылки перехода на след. страницу)

Text For Previous … (Троеточие у ссылки перехода на пред. страницу)

Написали, сохранили и теперь в блоге наблюдаете такую картину:

Странно, но ссылки на следующуюпредыдущую страницу как-то странно соседствует с многоточиями. Лично мне кажется это нелогичным, да и другие плагины постраничной навигации тоже по-другому расставляют эти точки. Взгляните например на этот пост с кучей красиво оформленных панелек постраничной навигации, нет там этого безобразия. Чтобы сделать как надо я пересмотрел несколько плагинов для WordPress, оформляющих постраничную навигацию, но ни один из них мне не подошел то из-за глюков самих плагинов, то из-за кривой системы оформления панельки в css, которая конфликтует с css моего шаблона. Проще оказалось чуть-чуть изменить код плагина WP-PageNavi и наслаждаться правильной навигацией с очень простой сменой ее оформления через файл с css стилями.

Открываем для редактирования файл wp-pagenavi.php из папки wp-pagenavi, находим строчку:

previous_posts_link($pagenavi_options['prev_text']);

Удаляем ее. Находим строчку:

if ($start_page >= 2 && $pages_to_show < $max_page) {

И перед ней вставляем:

echo '<span class="next-prev">';
previous_posts_link($pagenavi_options['prev_text']);
echo '</span>';

Тоже самое проделываем и с ссылкой на следующую страницу. Находим:

next_posts_link($pagenavi_options['next_text'], $max_page);

Удаляем ее. Находим строчку:

echo '<a href="'.clean_url(get_pagenum_link($max_page)).'" title="'.$last_page_text.'">'.$last_page_text.'</a>';

И после нее вставляем:

echo '<span class="next-prev">';
next_posts_link($pagenavi_options['next_text'], $max_page);
echo '</span>';

Сохраняем файл, открываем блог и видим:

Теперь код черной панельки с этого сайта. Открывайте файл pagenavi-css.css в папке wp-pagenavi и замените его содержимое следующим кодом:

.wp-pagenavi  {
	font-family: Sans-Serif; /* IE fix */
}
 
.wp-pagenavi a, .wp-pagenavi a:link, .wp-pagenavi a:visited {
	padding: 5px 8px 5px 8px;
	margin: 2px 0px 2px 0px;
	border-top: 1px solid black;
	color: #FFFFFF;
	background-color: #4f4f4f;
	font-weight: bold;
}
.wp-pagenavi a:hover {
	border-top: 1px solid black;
	color: #FFFFFF;
	background-color: black;
	font-weight: bold;
}
.wp-pagenavi span.pages {
	padding: 5px 8px 5px 8px;
	margin: 2px 0px 2px 0px;
	color: #FFFFFF;
	border-top: 1px solid black;
	background-color: #4f4f4f;
	font-weight: bold;
}
.wp-pagenavi span.current {
	padding: 5px 8px 5px 8px;
	margin: 2px 0px 2px 0px;
	font-weight: bold;
	border-top: 1px solid black;
	color: #FFFFFF;
	background-color: black;
	font-weight: bold;
}
.wp-pagenavi span.extend {
	padding: 5px 0px 5px 0px;
	margin: 2px 0px 2px 0px;
	border-top: 1px solid black;
	color: #FFFFFF;
	background-color: #4f4f4f;
	font-weight: bold;
}
.wp-pagenavi span.next-prev {
}

Обновите страницу и увидите такое отображение навигации:

Важно! Если вы хотите использовать именно стрелочки → и ←, то вам необходимо обязательно задать в css шрифт, в котором эти стрелочки есть. Иначе стрелочки все равно будут показаны, но в IE квадратик со стрелкой станет на 1 пиксель шире. Сущность этого бага мне непонятна, но если для всего блока навигации задать шрифт, то этот баг в IE исчезает. Кто-нибудь может мне объяснить как правильно избавится от бага, не задавая левый шрифт?

Красивые css-шаблоны для плагина брать тут.

Последняя версия плагина 2.50 работает только с WordPress версии 2.8 и выше.

 

Автор плагина: Lester “GaMerZ” Chan

Страница плагина: [ссылка]

Рассматриваемая версия: 2.30 от 12.05.2008

Совместимость с версией WordPress: 2.5 и выше.

Плагин WordPress "TS Custom Widgets" позволяет управлять показом виджетов.

Добавлено 19 января 2010 в категорию Плагины.

Сайдбар в блоге на WordPress может быть организован двумя способами: напрямую через вставку php-кода и с помощью виджетов. Если вы хоть чуть-чуть разбираетесь в html, css и php, то несомненно предпочтете использовать ручное редактирование файла сайдбара, но если ваших знаний не хватает на то, чтобы копаться в кодексе, разбирая синтаксис тегов шаблонов, то вы вынуждены использовать систему виджетов. Бывают ситуации, когда необходимо показать виджет только на определенных страницах блога, а на других его надо скрыть. При ручном редактировании сайдбара для решения этой задачи достаточно воспользоваться условными тегами, а что делать при использовании виджетов? Ведь по умолчанию WordPress показывает виджеты везде и всегда. Существуют десятки различных плагинов, дающих возможность определить, где будут показаны виджеты, а где нет. Я просмотрел несколько плагинов и больше всего мне понравился плагин TS Custom Widgets. Понравился он мне тем, что в нем нет излишней функциональности, у него только одна функция – определить, где будет показан тот или иной виджет в блоге и реализация этой функции в плагине сделана отлично.

Скачиваем плагин с его домашней страницы и устанавливаем его:

1. Распаковываем архив.

2. Копируем папку slayers-custom-widgets в /wp-content/plugins/.

3. Заходим в админку блога на вкладку "Плагины" и активируем плагин.

Плагин создает свое собственное меню в админке блога под названием "TS Custom widgets". Именно там и происходит настройка вывода виджетов. В первой колонке будет выведен список неиспользуемых в блоге виджетов (но доступных для использования на вкладке "Внешний видВиджеты"). Вы можете настроить их вывод в блоге, но пока они не будут добавлены в сайдбар – они показываться не будут.

Настройка вывода используемых в блоге виджетов происходит во второй колонке (а также в третьей, четвертой и по числу используемых в блоге сайдбаров). Уже настроенные виджеты выделяются красным цветом, а не настроенные синим. Чтобы настроить определенный виджет надо по нему кликнуть, при этом вы попадете на страницу настройки вывода виджета, которую можно условно разделить на 2 части:

1. Настройка вывода на конкретных страницах блога. Можно выбрать из 5 пунктов: posts (записи), pages (страницы), categories (рубрики), tags (страницы тегов), authors (подразумеваются и страницы и записи определенного автора). Это самый простой способ вывести виджет, скажем, только на странице "О сайте" или только на странице "Об авторе".

2. Настройка вывода виджета по типу страницы ("Assign a Widget to a specific WP template"). Здесь будьте внимательны, так как возможны ошибки. На всякий случай переведу эти пункты:

Show Widget Only on Homepage – показывать виджет только на главной странице (а также на всех страницах, образованных постраничной навигацией).
Show Widget on all posts – показывать виджет на всех страницах, имеющих тип "Запись".
Show Widget only on Sticky posts – показывать виджет только на прикрепленных страницах.
Show Widget on Posts/pages Where commenting is open – показывать виджет только на записях и страницах, где открыто комментирование.
Show widget on all pages – показывать виджет на всех страницах, имеющих тип "Страница".
Show widget on all Categories – показывать виджет на страницах рубрик.
Show widget on all Tag Pages – показывать виджет на страницах тегов.
Show widget on all Archive pages – показывать виджет на страницах архивов.
Show widget on Search results – показывать виджет на страницах результата поиска.
Show widget on the 404 – Not found Error Page – показывать виджет на странице 404 (при ненайденной в блоге странице).
Show Widget for admin previews – показывать виджет на страницах-черновиках (видеть такой виджет сможет только автор этой записи).

Плагин очень простой и легкий в использовании. Уверен, что в любом блоге найдутся виджеты, которые вы бы не хотели показывать на всех страницах блога. А в некоторых случаях плагин просто поможет избавиться от очень длинного сайдбара, распределив показ виджетов по разным разделам блога.

 

Автор плагина: slayer
Страница плагина: [ссылка]
Рассматриваемая версия: 2.0 от 04.03.2009
Совместимость с версией WordPress: 2.6 и выше.