Google Website Optimizer
Google Website Optimizer — плагин, интегрирующий одноимённый сервис Google с WordPress. Далее »
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 8Май
2009
Борьба с плагином Time spent on blog жёсткими методами
Вчера пришлось очень рано встать из-за SMS от монитора, наблюдающего за сервером: Apache лёг от DDoS-атаки. Как оказалось, DDoS был спровоцирован плагином Time Spent on Blog (http://iron.randombase.com/2008/05/31/wordpress-widget-time-spent-on-blog/, битая ссылка). Честно говоря, я никогда не понимал смысла в таких плагинах, тем более на очень посещаемых сайтах.
Плагин определяет, сколько времени пробыл пользователь на сайте (с двухсекундной точностью). Такая точность создаёт большие проблемы в тех случаях, когда средний посетитель открывает сразу три-пять страниц. Точность гарантируется конструкцией setTimeout("updateTime()", 2000), где updateTime() — функция, отправляющая асинхронный запрос на сервер.
Обновление текущей информации осуществляется в два запроса: SELECT для получения старых данных и INSERT/UPDATE для их обновления. Что характерно, в таблице нет никаких индексов, поэтому если у сайта обширная аудитория, а на сайте не настроена репликация, то MySQL очень быстро становится слабым звеном (что ни говори, а MyISAM не сильно хорошо работает с большим количеством параллельных записей). А IP-адрес посетителя (по нему делается выборка/обновление) хранится в базе строкой, что тоже далеко от идеала (экономнее хранить его числом).
Несколько сотен посетителей, открывшие по нескольку страниц, умудрились положить сервер. Далее »
Автор: Vladimir, опубликовано в: Linux, комментариев: 9Май
2009
Плагин Redirect от Nick Berlette
Сегодня по долгу работы пришлось столкнуться с плагином Redirect от Nick Berlette. Плагин выполняет перенаправление на URL, заданный в Произвольных полях записи или страницы. Сам по себе плагин простой — кода всего 10 строк. Я бы на него даже не обратил внимание, если бы CLI-скрипт не вернул фатальную ошибку. Далее »
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 4Май
2009
nginx Compatibility: делаем WordPress дружелюбнее к nginx
Переведя несколько сайтов с Apache на nginx, уже который раз встречаю подводные камни. Один из них — нежелание WordPress понимать код редиректа, другая — постоянные попытки использовать PATHINFO-пермалинки вместо «нормальных» (pretty permalinks).
Неудобно каждый раз лезть в код WordPress, чтобы поправить очередную несовместимость, поэтому я написал небольшой плагин. Далее »
Автор: Vladimir, опубликовано в: nginx, Плагины WordPress, комментариев: 7Апр
2009
All in One SEO Pack 1.4.6.15: пустой экран при неверном запросе
Вчера вечером нашёл, а сегодня утром окончательно разобрался с одной очень интересной ошибкой плагина All in One SEO Pack. Ошибка проявляется в версии 1.4.6.15, но, возможно, более ранние версии тоже ей подвержены. Для проявления ошибки необходима определённая структура пермалинков: я столкнулся с ошибкой на такой структуре: /%category%/%postname%/. Тем не менее, структура — условие необходимое, но не достаточное: я не на всех сайтах смог воспроизвести ошибку. Возможно, причиной этому являются сторонние темы и/или плагины. Тем не менее, в причинах её возникновения я разобрался.
Проявляется ошибка следующим образом: при переходе на сайт по неверной ссылке (например, http://example.com/wpadmin) отображается пустая страница, а в логе ошибок присутствует примерно такое сообщение:
Дек
2008
Deferred RSS: отложенная публикация RSS-фидов
Сегодня в статье «Противодействие плагиату RSS» Alex поднял очень актуальную тему защиты авторских прав блоггеров. И, хотя предотвратить кражу контента невозможно, существуют способы, помогающие усложнить процесс воровства.
Реализация двух трёх таких способов представлена в данном плагине. Далее »
Дек
2008
WP File Cache 1.0
Появилась новая версия плагина WP File Cache.
В данной версии у плагина появился интерфейс для администратора и, как следствие, возможность «тонкой настройки».
Функциональность плагина:
- реализация долговременного кэширования на уровне запросов;
- полная совместимость с интерфейсом класса WP_Object_Cache WordPress;
- использование памяти под сессионный кэш для увеличения производительности;
- сессионное кэширование часто изменяющихся объектов;
- хранение настроек в коде плагина.
Особенности плагина:
- возможность отключения кэширования (в том числе и встроенного в WordPress);
- возможность отключения межсессионного кэширования;
- возможность задания групп, не подлежащих межсессионному кэшированию (полезно только разработчикам, которые знают, о чём идёт речь);
- плагин хранит свои настройки непосредственно в коде (в файле
wp-content/object-cache.php). Это связано с проблемой курицы и яйца, а также с архитектурными особенностями WordPress.
Плагин существует в двух локализациях: русской и английской. Если у Вас есть желание перевести плагин на другой язык, пишите.
Замечания по установке: после активации плагин для хранения кэша будет использовать каталог wp-content/plugins/file-cache/cache. Поэтому перед активацией каталог должен быть доступен на запись. Каталог для хранения кэша можно изменить в настройках (для увеличения производительности имеет смысл размещать кэш на RAM-диске); каталог также должен быть доступен на запись. Плагину при активации/сохранении настроек должен быть доступен на запись каталог wp-content: в него копируется файл object-cache.php. После того, как плагин активирован и сконфигурирован, права на запись можно убрать.
По производительности плагин бьет как «голый» WordPress 2.7rc1, так и WordPress, «нагруженный» плагинами. Причем выигрыш в производительности становится всё более заметным при увеличении нагрузки на сайт (когда обмен данными с MySQL становится всё более интенсивным).
Плагин скоро появится на wordpress.org (да, у меня наконец-то дошли руки), и его можно будет скачивать прямо оттуда
Как следствие, у плагина появилась домашняя страница.
Скачать последнюю версию плагина WP File Cache.
Большое спасибо Максиму Покровскому за тестирование плагина под Windows.
Свежая версия плагина, а также вопросы/комментарии находятся на странице WP File Cache: долговременное кэширование в WordPress.
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: 24Дек
2008
Simple Tags и автоматические ссылки меток на русском языке
Сегодня у Lecacus’а на сайте наткнулся на упоминание одной нерешённой проблемы:
У меня не работают автоматические ссылки меток в содержимом записи для меток на русском языке. Т.е. если есть метка «wordpress», то слово «wordpress» заменяется на ссылку http://myblog.net/tag/wordpress/. А вот если есть метка «спорт», то слово «спорт» ссылкой не заменяется. Подскажите как сделать так, чтобы плагин работал и с русскими метками.
А так как сегодня мне уже пришлось иметь дело с Simple Tags, я решил разобраться, в чём же дело и исправить досадный баг. Далее »
Автор: Vladimir, опубликовано в: Патчи, комментариев: 17Ноя
2008
WordPress 2.7 и Simple Tags
Simple Tags — это плагин для WordPress, предназначенный для управления тэгами (или, как их еще называют, метками). Достоинств у плагина очень много (полный список — на официальной странице плагина), работает просто на «ура».
Но, как обычно, в бочке мёда есть ложка дёгтя: плагин отказывается работать в WordPress 2.7. Причём довольно-таки по-глупому: номера версий, с которыми плагин хочет работать, жёстко зашиты в коде. Если в список добавить 2.7, плагин будет работать. Далее »
Автор: Vladimir, опубликовано в: Патчи, комментариев: 3Ноя
2008
HitsLink для WordPress
HitsLink — это платный сервис стаистики, который достаточно хорош, чтобы быть альтернативой Google Analytics. HitsLink предоставляет 30-дневный пробный бесплатный период.
HitsLink является довольно-таки популярным сервисом в странах Запада (и лично мне он нравится больше, чем Clicky или Google Analytics). Далее »
Автор: Vladimir, опубликовано в: Плагины WordPress, комментариев: нетНоя
2008

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

