WP File Cache 1.1

Тихо и незаметно вышел  1.1. В плагине исправлена серьёзная плавающая в методе FileCache::get(). Всем тем, кто использует данный плагин, очень рекомендую обновиться.

Скачать плагин WP File Cache 1.1 Далее »

Автор: , опубликовано в: Плагины WordPress, комментариев: 70
19
Дек
2009

Оптимизация All in One SEO Pack

Как оказалось,  — один из основных источников запросов к базе данных на блогах с большим количеством страниц (page). Всё дело в том, что в есть одна неотключаемая особенность: он пытается переписать все ссылки, которые выводятся через функцию wp_list_pages() (обычно эта функция вызывается из заголовка или подвала темы и используется для создания меню).

Вообще переписывание ссылок — это отдельная история, заслуживающая отдельной статьи. Если вкратце, то плагин берёт метаданные из поста и заменяет ими title и текст ссылки.

All in One SEO Pack: Edit Page

Что характерно, если поле Title Attribute пустое, то All in One SEO Pack вообще затрёт title ссылки.

Проблема с запросами возникает из-за того, что All in One SEO Pack читает метаданные для каждой страницы, присутствующей в результате, который вернула функция wp_list_pages(). Если в меню тридцать страниц, то в результате получим тридцать лишних запросов к базе данных. Умножаем на количество показов страниц (страниц в широком смысле, а не в терминах ) и получаем большую цифру. Далее »

Автор: , опубликовано в: Патчи, комментариев: 10
25
Ноя
2009

Еще одна оптимизация NextGen Gallery

имеет одну неприятную особенность: при каждом обращении к блогу выполняется обновление (UPDATE в терминах ) таблицы wp_options. Хотя для «средних» блогов это не критично, для хорошо посещаемых ресурсов это плохо по ряду причин:

  1. Обновление таблицы wp_options сбрасывает запросов MySQL к таблице wp_options, что приводит к необходимости реального выполнения запросов на выборку данных (с учётом огромного количества записей — благодаря всяким разным плагинам — это лишний трафик между PHP и MySQL).
  2. Выполнение операции обновления таблицы при использовании MyISAM приводит к блокировке таблицы; при высокой посещаемости это приводит к вынужденному ожиданию освобождения таблицы и негативно сказывается на нагрузке и производительности.
  3. При использовании плагинов объектного кэширования каждый вызов update_option() приводит к необходимости обновления и записи кэша; обновление файлового объектного кэша приводит к лишним обращениям к диску (которых на виртуальных серверах лучше избегать).
  4. В конце концов, это лишний запрос, который не является необходимым.

Далее »

Автор: , опубликовано в: Патчи, комментариев: 18
23
Ноя
2009

Еще один патч для Post Templates

Три месяца назад я писал о плагине Post Templates и его несовместимости с WordPress 2.8. С тех пор автор плагина исправил ошибки (что характерно, исправление захватило только те ошибки, что и мой ), выпустил новую версию плагина и сменил лицензию плагина на коммерческую.

Тем не менее, последняя бесплатная версия (на момент написания статьи — 3.4.1) содержит две ошибки, приводящие к облому вида «You do not have sufficient permissions to access this page». Ошибка проявляется при создании или редактировании шаблона страницы: на ней ссылки на Manage Templates и Create a page from this template ведут в никуда (а точнее — на страницу с ошибкой «You do not have sufficient permissions to access this page»). Далее »

Автор: , опубликовано в: Плагины WordPress, комментариев: нет
5
Ноя
2009

SJ Hook Profiler — плагин для измерения производительности хуков

Сразу оговорюсь, что речь пойдёт совсем не о боксе, а о и .

Разработчики плагинов WordPress и bbPress используют две функции для расширения функциональности WordPress/bbPress: это add_action() и add_filter(). Первая служит для установки обработчика некоторого события, вторая — для установки фильтра. Под хуком подразумевается обобщённое понятие (либо фильтр, либо обработчик).

Как показывает практика, большая часть времени генерации страницы уходит именно на вызов обработчиков и фильтров. И когда возникает вопрос: почему время генерации страницы такое большое, а запроса всего три, и они выполняются за сотые доли секунды, на помощь приходит данный . Далее »

Автор: , опубликовано в: bbPress, Плагины WordPress, комментариев: 3
22
Сен
2009

bbPress Attachments 0.2.7: решение проблемы с установкой

Устанавливал заказчику  и bbPress Attachments 0.2.7. Плагин установился без проблем, но вот незадача: вложения загружаются (создаются файлы на диске), но на форуме не отображаются.

Оказалось, что всё дело портит в функции активации плагина. Далее »

Автор: , опубликовано в: bbPress, комментариев: 2
21
Сен
2009

WordPress 2.8 и плагин Post Templates

 2.8 сказался не самым лучшим образом на плагине Post Templates от Vincent Pratt. На данный момент в плагине присутствуют несколько серьёзных ошибок, которую сводят его практическую пользу к нулю. Хуже всего, что автор, по-видимому, забросил , и исправлять ошибки теперь некому.

Итак, имеются следующие ошибки:

  • Ошибка «You do not have sufficient permissions to access this page» при попытке создания нового шаблона или редактировании существующего (и еще в нескольких местах) — появилась в WordPress 2.8.1 в результате исправления этой уязвимости;
  • Fatal error: Maximum execution time of 30 seconds exceeded in /wp-includes/plugin.php on line 385 при заходе на страницу редактирования страниц (звучит-то как!);
  • невозможность сохранения шаблонов, так как отсутствует кнопка «Сохранить» (это если вы побороли первую ошибку, либо у вас WordPress 2.8).

Далее »

Автор: , опубликовано в: Патчи, комментариев: 8
6
Авг
2009

WP Super Cache и высокая нагрузка: часть 2

Вчера я наконец-то поднял munin и новый monit на сервере, а сегодня посмотрел на результаты мониторинга. Самое первое, что бросилось в глаза: iostat показывает очень большое количество записей (превышавшее количество чтений почти в тысячу раз).

На сервере живут четыре сайта на , два из которых (littlefox.ru и cat-tv.ru) находятся в Alexa Top 100,000 (они создают основную нагрузку на сервер).

Особенность обоих сайтов — они используют небезызвестный . Мне с этим плагином приходилось неоднократно сталкиваться, и не всегда с хорошей стороны (так получилось), так что я имею представление о том, как он работает.

С целью поэкспериментировать мы отключили WP Super Cache. В результате получилась такая картина. Далее »

Автор: , опубликовано в: WordPress, комментариев: 17
29
Июл
2009

Увеличение производительности плагина NextGen Gallery

В случае, если галереи содержат несколько тысяч изображений, в зависимости от мощности сервера и посещаемости сайта могут возникнуть проблемы с производительностью, связанные с неоптимальностью индексов в таблице wp_ngg_pictures. Далее »

Автор: , опубликовано в: WordPress, комментариев: 2
6
Июн
2009

Simple Tags 1.6.6 и автоматические ссылки меток на русском языке

Полгода назад я рассказывал о том, что не умеет работать с многобайтовыми символами (коими, к слову, являются русские буквы в кодировке UTF-8). За это время вышло восемь или девять новых версий плагина, но проблема с поддержкой UTF-8 всё же осталась.

Так сложилось, что именно сегодня я решил обновить . Патчить код было лень, я надеялся, что у Lecactus’а лежит пропатченная свежая версия. Увы, только 1.6.3. Далее »

Автор: , опубликовано в: Патчи, Плагины WordPress, комментариев: 23
2
Июн
2009