Усоврешенствованный клон WP-CodeBox

Наверное, многие знают о плагине WP-CodeBox, написанном Eric Wang. Данный плагин provides clean syntax highlighting and AJAX advanced features for embedding source code within pages or posts, то есть всё то, что нужно блоггеру, который часто постит код. Для подсветки синтаксиса используется GeSHi.

Я пользуюсь плагином около трёх месяцев и при этом не смотрю на него сквозь розовые очки: неоднократно я уже писал патчи, исправляющие ту или иную ошибку в коде:

Но не успел я поправить версию 1.2.2, как вышла версия 1.2.2.1, использующая более новую версию GeSHi (что я, кстати, поправлял в своём блоге еще в 1.2.1).

Устав исправлять старые и новые ошибки, я решил переработать код плагина. В результате изменений:

  • генерируемый HTML-код стал более осмысленным и компактным;
  • генерируемый HTML-код не содержит таблиц, ибо табличных данных нет;
  • HTML-код использует классы, нежели инлайновые стили: во-первых, это делает исходник более читабельным, а во-вторых, для больших блоков кода очевидно значительное уменьшение размера страницы;
  • PHP-код не изобретает велосипед: функциональность, поддерживаемая GeSHi, в коде плагина не дублируется (смысл ее дублировать?);
  • проведён рефакторинг PHP-кода: ereg() заменен stripos() (а затем вообще удалён), исправлена ошибка в регулярном выражении, из-за чего загрузка файлов могла не работать, исправлены потенциальные XSS-дыры, вместо htmlspecialchars() используется wp_specialchars()
  • JavaScript не конфликтует с Prototype/LightBox/ProtoBox;
  • генерируемый XHTML-код большей частью валиден (на данный момент я еще не весь код просмотрел);
  • в GeSHi добавлена поддержка еще нескольких языков и внесены коррекции в существующие модули;
  • явно было что-то еще, но я уже не помню :-)

В общем, я принял героическое решение, что я сам буду поддерживать полученный код и развивать его (фактически, я создал новый форк от WP-CodeBox). С названием я не определился, пока будет называться просто CodeBox, а там посмотрим. Обратную совместимость я постараюсь сохранить.

Если кто-то будет данный пост читать :-) , пишите отзывы и пожелания!

Скачать CodeBox.

Добавить в закладки

Связанные записи

1
Июнь
2008

Комментарии к статье «CodeBox: подсветка синтаксиса для WordPress» (4)  »

  1. AlexNote says:

    Нужная вещь. В силу нехватки времени, посмотреть плагины для этого дела на офф. сайте забываю, а раз наткнулся на ваш, то завтра и попробую.

  2. Vladimir says:

    Надеюсь, Вам понравится… Будут пожелания - пишите :-)

  3. [...] статье “CodeBox: подсветка синтаксиса для WordPress” я говорил, что вместо того, чтобы постоянно [...]

Подписаться на RSS-ленту комментариев к статье «CodeBox: подсветка синтаксиса для WordPress» Trackback URL: http://blog.sjinks.org.ua/wordpress/plugins/177-codebox-syntax-highlight-for-wordpress/trackback/

Оставить комментарий к записи «CodeBox: подсветка синтаксиса для WordPress»

Вы можете использовать данные тэги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Оставляя комментарий, Вы выражаете своё согласие с Правилами комментирования.

Подписаться, не комментируя