No Self Pings

По умолчанию WordPress отсылает уведомление о ссылке (trackback) на любой сайт, который поддерживает эту технологию. Рассказывать о ней я не буду, все блогеры более-менее знакомы с трэкбеками: если кто-то ссылается на вашу статью, то WordPress пришлет уведомление об этой ссылке и это уведомление будет размещено как комментарий к записи. Есть только одно неудобство с трэкбеками (помимо проблем со спамом) - если вы ссылаетесь на свою собственную статью в блоге, то WordPress все равно отошлет трэкбек, а затем и опубликует его. Если вы будете постоянно ссылаться на свои старые записи, то рано или поздно комментарии к вашим статьям будут забиты трэкбеками со своего собственного блога. Плагин No Self Pings не дает WordPress'у отсылать трэкбек, если адресатом является этот же блог.

Читать дальше..

Mail On Update русская версия

После того как я избавился от спама в комментариях к записям, заходить в админку блога мне стало влом, так как для написания постов я пользуюсь блог-клиентом Windows Live Writer. Однако следить на обновлениями плагинов в блоге все-таки надо и поэтому я стал искать плагин, который будет мне сообщать на email о выходе новых версий установленных плагинов. Таких плагинов нашлось всего два, а заставить работать мне удалось только один - "Mail On Update", так что о нем и буду говорить. Делает он ровно то, что я и искал: присылает мне на email сообщение о том, что вышли новые версии плагинов и что мне надо их обновить.

Читать дальше..

Проблема с использованием функции is_home()

Потратил сегодня пару часов, пытаясь понять, почему функция is_home() возвращает значение TRUE даже если открыта не главная страница блога. Путем тестов выяснилось, что за главную страницу считается любая страница, образованная постраничной навигацией (/page/2, /page/3 и т.д.). Если подумать, то это вполне логично для функций типа is_category() - ведь при переходе на вторую страницу определенной рубрики сама рубрика остается той же самой. Но ситуация с is_home() совершенно другая - главных страниц в блоге не может быть больше одной. Вероятно для создателей WordPress понятие "main blog page" сродни категории с таким же названием. Обойти проблему оказалось довольно легко, надо вместо кода:

<?php if ( is_home() ) { ?>
	<h1>Главная страница!</h1>
<?php } else { ?>
	<h1>Это не главная страница!</h1>
<?php } ?>

Использовать код:

<?php if ( (is_home())&&!(is_paged()) ) { ?>
	<h1>Главная страница!</h1>
<?php } else { ?>
	<h1>Это не главная страница!</h1>
<?php } ?>

Как вы видите, решение оказалось элементарным. Жаль, что для его поиска пришлось закопаться в форумы поддержки, так как в документации ничего подобного не нашлось.

Нет автоматическому спаму

Сегодня меня окончательно достал автоматический спам в комментариях: Akismet пропустил десяток спамных комментариев от всяческих "Гинекологов" с сообщениями типа "Очень было интересно читать, спасибо!" и "Даже моей маме понравилось :))". Плюс несколько десятков спамных комментариев он поймал, но ежедневно просматривать попавшие в спам комментарии на предмет попадания туда по ошибке нормального комментария меня утомило. Варианты с премодерацией и обязательной регистрацией в блоге я не рассматриваю - премодерация не отменит необходимости просмотра спама, а обязательная регистрация в блоге автоматом снизит активность комментирующих раз в 10 минимум. Установка капчи меня также не устраивает: во-первых, она тоже снижает активность читателей блога, ну и во-вторых, что будет с вашим комментарием, если вы ошиблись в вводе капчи? Правильно, текст уже написанного комментария исчезнет. Такой фигней страдают практически все анти-спам плагины. У того же Макса неправильно введенная капча приводит к потере комментария, если вы не удосужились перед отправкой его скопировать.

Читать дальше..

RSS Includes Pages

WordPress представляет собой весьма удобный и легко настраиваемый блог-движок, но благодаря своей гибкости многие люди используют его не по прямому назначению, а в качестве CMS для своего сайта. На практике это выглядит так: весь контент на сайте создается страницами, а обычные записи если и используются, то только для раздела новостей сайта. Единственное неудобство такого подхода состоит в том, что посетители не могут подписаться по RSS на обновления сайта, так как страницы в ленту RSS не попадают. Данный плагин как раз исправляет данную ситуацию и включает в общую RSS ленту страницы сайта на WordPress.

Читать дальше..