SJ CAPTCHA Lite: невидимая защита от спама
Собрав большую статистику по спам-ботам, я решил несколько видоизменить плагин SJ CAPTCHA — причем в сторону упрощения.
Причин тому несколько:
- Проверка FCrDNS оказалась чрезмерно эффективной: да, она спасает от спам-ботов. Но, к сожалению, из-за большого радиуса кривизны рук некоторых провайдеров, которые не могут нормально PTR-записи прописать (или поставить им в соответствие A-записи), отсеиваются и вполне нормальные пользователи. Что обидно.
- Проверка A и MX-записей доменов, указанных в email, оказалась не очень эффективной: большинство спамеров хотя и используют несуществующие адреса, но указанные домены в природе всё же существуют. К тому же, реализация данной проверки не работает в Windows (особенности PHP)
- Собственно CAPTCHA оказалась очень эффективной — все «слишком умные» спамботы срезались именно на ней. К сожалению, при отключенных изображениях или использовании консольных браузеров она бесполезна. А если роль спам-бота играет человек, то она вообще никак помочь не сможет. Увы.
Сен
2008
FormatControl — плагин для решения проблем с форматированием в WordPress
В предыдущей статье я писал про основные источники неправильной разметки в WordPress, среди которых оказалась встроенная в WordPress функция wpautop().
Для решения этой проблемы родилась идея написать плагин, который бы автоматически исправлял ошибки, вносимые функцией wpautop(). А также по возможности бы отключал её. В результате родился плагин FormatControl:
- плагин заменяет
wpautop()во всех фильтрах по умолчанию на свой (исправленный) обработчик; при этом новый фильтр не будет установлен, если какой-нибудь плагин уже убралwpautop; - плагин позволяет отключить функцию
wpautop()в пределах статьи путём задания дополнительного поляnoautopсо значением 1 (в целях совместимости с плагином WP Unformatted так же поддерживается полеsponge); - плагин позволяет отключить функцию
wptexturize()(известную по замене прямых кавычек угловыми) в пределах статьи путём задания дополнительного поляnotexturizeсо значением 1 (в целях совместимости с плагином WP Unformatted так же поддерживается полеsandpaper); - при установке своих фильтров-замен плагин добавляет их с тем же приоритетом, что был у заменяемого фильтра.
Скачать FormatControl для WordPress.
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 6Июл
2008
Обновление для CodeColorer 0.6.0
Стараниями Дмитрия Лялина я узнал про еще один плагин WordPress для подсветки синтаксиса — CodeColorer. Как и многие другие плагины (напрмер, WP CodeBox Эрика Вонга или мой CodeBox), CodeColorer использует в качестве движка библиотеку GeSHi. Далее »
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 2Июл
2008
CodeBox 0.5 для WordPress
В статье «CodeBox: подсветка синтаксиса для WordPress» я говорил, что вместо того, чтобы постоянно исправлять старые и новые баги в плагине WP CodeBox, я сделал форк, который будет жить своей жизнью, но при этом будет совместимым с WP CodeBox, чего бы Eric Wang там ни творил.
Обещания, как говорится, нужно держать
Сегодня у меня выдались пять часов свободного времени, и я занялся доработкой/исправлением плагина. Фактически, из исходного кода остались только имена параметров, всё остальное было переписано в «родном, мудром, обьектно-ориентированном» стиле.
В результате получился CodeBox 0.5 (функционально соответствующий WP CodeBox 1.2.2.1). К версии 1.0 планирую довести до ума поддержку TinyMCE (в своё время несовместимость WP CodeBox с TinyMCE привела к тому, что я не использую WYSIWYG), поменять кое-что в JavaScript, добавить новые опции и т.п. Поддержка интернационализации уже есть, осталось заняться переводом
Как говорится, планов очень много, где бы время взять?
Скачать CodeBox 0.5 для WordPress.
PS — по сравнению с предыдущей версией, плагин «похудел» практически на 200 килобайт. Работа идёт!
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 21Июн
2008
OneButton — улучшенный вариант ОднойКнопки
Два с половиной месяца назад я писал про альтернативную версию плагина ОднаКнопка для WordPress. Что же, пришла пора Русскому Программисту написать что-то своё.
В результате появился небольшой такой плагинчик, по функциональности идентичный (и в чём-то даже превосходящий) ОднуКнопку.
Достоинства:
- не требует внешних скриптов (всё, что нужно для работы, присутствует на сервере);
- запросы отсылаются непосредственно сервису закладок и никуда более — если у вас паранойя, вам это понравится (ОднаКнопка отсылает их еще и на свой сервер);
- для отображения бокса с сервисами закладок используется XHTML-шаблон, который пользователь может переделать по своему вкусу;
- очень легко добавлять новые сервисы закладок;
- поддерживается больше сервисов закладок;
- для добавления статьи (которая отображается шаблоном
single.php) в сервис закладок не требуется поддержка JavaScript (любители Lynx, специально для вас); - все иконки сервисов закладок хранятся в одном файле (техника, известная как CSS rollovers); как следствие, для загрузки всех иконок требуется один запрос, а не двадцать четыре;
- zero configuration — поставил и забыл.
Установка
Копируете файл onebutton.zip в каталог с плагинами WordPress (wp-content/plugins), разархивируете, после чего активируете в wp-admin/plugins.php.
Скачать плагин OneButton for WordPress.
История изменений:
- Версия 0.2:
- поддержка интернационализации;
- поправлены иконки и недочеты в разметке (bersy, большое спасибо!);
- улучшена поддержка Internet Explorer 6 (как я его не люблю!).
- Версия 0.2.1:
- Версия 0.3b — Alex, спасибо за идеи:
- возможность открывать сервисы в новом окне (путём добавления в ссылку
target="blank"); - возможность добавлять отключать
rel="nofollow"в ссылке на сервис; - возможность показывать кнопку только в полной версии статьи/страницы (в этом случае не подгружается ненужный более JavaScript — минус один запрос);
- кнопка не должна попадать в фид или трэкбэк;
- возможность выбора показываемых сервисов закладок.
- возможность открывать сервисы в новом окне (путём добавления в ссылку
-
Версия 0.3b2:
- добавлены сервисы Lopas и Закладки I.UA (подсмотрено здесь);
- автоматическое использование описания (мета-тэг
descriptionстатьи) и тэгов (tags + category) для сервисов, которые это поддерживают (Закладки I.UA, Blink, Simpy, Spurl, Текст 2.0, RuCity).
-
Версия 0.3b3:
- добавлены сервисы: Connotea, Bibsonomy, Trucking Bookmarks, Коммунизм и UCA закладки в UA.IX;
- появилась возможность не показывать OneButton для выбранных статей (путём добавления поля
disable_onebuttonс ненулевым значением); - добавлена поддержка отключения иконок сервисов закладок.
-
Версия 1.0b:
- добавлены сервисы: Slashdot, Magnolia, Blogmarks, Current, Meneame, Oknotizie, Diigo, Funp, Hugg, dealspl.us, N4G, Mister Wong, Faves, Yigg, Fresqui, Care2, Kirtsy, Sphinn;
- добавлена возможность активации OneButton по клику (а не по наведению), создания списка сервисов при помощи JavaScript, сортировка сервисов закладок;
- переделан интерфейс администратора, добавлена возможность редактировать существующие сервисы (добавление и удаление будут в 1.0);
- для уменьшения задержки при отрисовки страницы внешние JavaScript-файлы добавляются в самый низ страницы (тема должна иметь вызов
wp_footer();); - добавлена возможность помещения OneButton в любое место шаблона путём вызова функции
insert_onebutton(); - JavaScript-версия кнопки позволяет задавать тэги и описание (помимо названия и адреса);
- много всего было переписано;
- PHP4 бета-версией не поддерживается!
-
Версия 1.0.2b:
- добавлен сервис SaveThis.ru;
- исправлена ошибка с названием/описанием статей при использовании OneButton не на
is_singular()-страницах (спасибо bruha за сообщение об ошибке); - исправлена ошибка с некорректным отображением состояния при сохранении настроек (спасибо Алексею);
- PHP4 бета-версией всё еще не поддерживается!
Июн
2008
SQLMon: плагин для анализа SQL-запросов
Меня всегда интересовало, насколько эффективно WordPress работает с базой данных, и насколько хорошо спроектирована база данных.
Практически в каждом проекте, над которым я работаю, я использую те или иные средства для анализа производительности скрипта и поиска его слабых мест. Для разработчиков не является секретом, что во многих случаях плохая производительность работы скрипта обусловлена низкой производительностью SQL-запросов. И, как правило, низкое быстродействие запросов связано с их неоптимальностью (что включает в себя отсутствие необходимых индексов в базе данных).
Однажды столкнувшись с ужасной производительностью WordPress и не имея возможности анализировать код десятка поставленных плагинов, я стал решать задачу иначе, в результате чего родился плагин для анализа SQL-запросов. Далее »
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 6Июн
2008
WP File Cache: замена WP_Object_Cache с поддержкой долговременного кэширования
Решив уделить пару часов оптимизации своего собственного блога, я с удивлением обнаружил, что страница может генерироваться несколько секунд (!). Отойдя от шока и выяснив, в чем там дело (этому можно будет посвятить отдельную статью), я быстро разобрался с запросами к базе данных и уменьшил общее время запросов в среднем до одной секунды (ну медленный у меня сервер).
Тем не менее, это заставило меня задуматься о том, как WordPress использует собственный кэш и что можно сделать, чтобы улучшить производительность. Далее »
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 16Июн
2008
WP Secure Admin
Небольшой плагин для любителей HTTPS — помещает панель управления WordPress (админку, если по-русски) за HTTPS. Shane, специально для тебя!
Возможно, кому-нибудь даже пригодится. Скачать WP Secure Admin.
Update: специальный бонус: плагин WP Secure Login — безопасный логин/регистрация/восстановление пароля. Скачать WP Secure Login.
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 2Июн
2008
CodeBox: подсветка синтаксиса для WordPress
Наверное, многие знают о плагине WP-CodeBox, написанном Eric Wang. Данный плагин provides clean syntax highlighting and AJAX advanced features for embedding source code within pages or posts
, то есть всё то, что нужно блоггеру, который часто постит код. Для подсветки синтаксиса используется GeSHi. Далее »
Июн
2008
Спамеры просто достали, или, Еще одна CAPTCHA для WordPress
В очередной раз удалив десяток спамеров из базы и почистив комментарии от ссылок на порносайты и виагру, я серьёзно задумался о том, чтобы поставить CAPTCHA.
На Wordpress.org есть примерно с десяток плагинов для отсеивания спам-ботов, но использование чужого кода — это не наш метод, поэтому коллекция плагинов пополняется еще одним
Далее »
Апр
2008

Меня зовут Владимир, я программист-фрилансер, специализирующийся на Web-программировании и програмировании под Linux.
По совместительству занимаюсь администрированием LAMP/LNMP-серверов и техническим переводом.

