Зачем обновлять плагины?

Владимир | | WordPress.

wordpress code highlighter bug

Хочу рассказать историю из реальной жизни.

Публикую я очередной пост. Отформатировал, загрузил файлы, сохранил. Все как обычно.

Нажимаю на «Предварительный просмотр»… Текста нет. Заголовок на месте, рубрики тоже, а текста нет.

Пробую изменить текст в редакторе. Вырезал пару последних абзацев. Сохраняю…

Все отлично… Текст на месте.

Возвращаю абзацы назад… Текст снова исчезает.

Думаю, ничего себе, с каких это пор WordPress стал ограничивать длину поста?

Лезу на сервер смотреть базу. Весь текст на месте!

На всякий случай выполняю из phpMyAdmin запрос – работает.

После этого до меня «дошло». Если данные в БД есть и WordPress может их получить, а в блоге их нет, значит, кто-то их «съел» 😉 .

Виновник нашелся быстро — Dean’s Code Highlighter. Это плагин для подсветки кода. А для исправления ошибки оказалось достаточно его обновить до последней версии. Кстати, у меня стояла версия 1.1, а новая имеет номер 1.2.

О причине ошибки я тоже догадываюсь. Этот плагин перехватывает текст поста, ищет в нем фрагменты кода, анализирует их, вставляет дополнительные теги для подсветки и, затем, передает результат WordPress.

В тот раз пост был довольно длинный (6 страниц 12-ым шрифтом в Word’е) с большими вставками кода. В какой-то момент возникла ошибка и плагин вернул пустую строку, вместо отформатированного текста.

Мораль тут такая.

Если вы не сталкивались с багами – это не значит, что их нет 😉

Старайтесь следить за обновлениями, как самого движка, так и плагинов. Это не означает, что нужно переходить на новую версию сразу после ее выхода, но почитать change log бывает полезно.

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

До встречи!

Интересно почитать:

Freshcoder.ru — уроки программирования на PHP

  • Иногда затягиваю это дело, но после Вашего поста иду в админку обновлять все плагины

  • Иногда затягиваю это дело, но после Вашего поста иду в админку обновлять все плагины