Плагин WordPress WP-Syntax
Сегодня потратил уйму времени на то, чтобы раз и на всегда решить вопрос с выводом блока в котором отображается код с подсветкой синтаксиса. Многие глубоко уважаемые и супер-пупер блогеры ужаснутся, и выпадут в осадок , типа почему так долго или что за неуч. Да приходится признать, что не все так просто в этом мире , особенно если до всего приходится доходить самому. Но тем и интересней сам процесс ведения блога, хотя отсутствие знаний иногда просто вгоняет в ступор.
И так, к чему это я все веду, да к тому, что информации предлагается, надо признать, даже не море, а целый океан, выбирай не хочу. Только вся эта кипа написанного текста в основе своей не очень понятна простому пользователю, коими являются подавляющее большинство наших граждан. К чему сведены описания плагинов или других примочек для блогов или сайтов, да к элементарному переписыванию кодов и ссылок на скачивание.
Надо отдать должное тем авторам и веб-мастерам, которые не гнушатся спускаться с Олимпа к нам грешным и разжевывают все тонкости и хитрости, будь то ведение блога или построение сайта.
Огромное спасибо Александру Самсонову (Flector)
Поверьте мне на слово, в глубинке тоже люди и тоже горят огромным желанием приобщиться к доселе неизведанному миру, вот только учителей и образовательной базы в этой сфере нет, и долго еще не будет. Вот и приходится до закипания мозгов, вгрызаться в премудрости жизни на просторах глобальной сети.
Ладно хватит лирических отступлений, вернемся к теме статьи. По причине частого использования в своих постах описаний различных кодов, мне понадобился плагин вставки кода в текст. Так вот, перебрал не один из существующих и остановил свой выбор на WP-Syntax Почему именно этот плагин? Отвечу так: он очень прост в использовании, поддерживает синтаксис кучи языков программирования, а также умеет исправлять испорченный визуальным редактором код, преобразовывая HTML-коды символов в сами символы.
Для начала как всегда пример работы:
1 2 3 4 5 |
public class Hello { public static void main(String[] args) { System.out.println("Hello World!"); } } |
Если заинтересовала работа плагина то приступим непосредственно к реализации внедрения его на Ваш блог.
Для этого скачайте сам плагин : WP-Syntax
- Распакуйте полученный архив
- Скопируйте папку wp-syntax в /wp-content/plugins/.
- Зайдя в админ-панель блога активируйте плагин
Настройки плагина практически отсутствуют, можете приступать к использованию на страницах блога. Правильный синтаксис вставки кода выглядит так: <pre lang=”LANGUAGE” line=”1″> ….Ваш код ….</pre>
LANGUAGE это обозначение языка программирования, а line=”1″ это необязательный параметр, указывающий плагину включить нумерацию строк кода с указанного номера.В плагин заложена поддержка подсветки кодов громадного количества языков программирования. Полный перечень языков программирования вы сможете посмотреть здесь: ТЫНЦ для большинства языков обозначение будет равно названию языка (php, java, css, perl, sql и др.).
Небольшие примеры использования плагина:
1. PHP, без нумерации строк.
<div id="foo"> < ?php function foo() { echo "Hello World!\\n"; } ?> </div> |
2. JAVA , c нумерацией строк.
1 2 3 4 5 |
public class Hello { public static void main(String[] args) { System.out.println("Hello World!"); } } |
3. Ruby, c нумерацией строк, начиная с 18 строки.
18 19 20 21 22 |
class Example def example(arg1) return "Hello: " + arg1.to_s end end |
Все, плагин у нас работает и все движется в правильном направлении по пути развития. Замечу лишь одну корявость в работе данной фичи: иногда плагин может выводить вместо > его код > Но и у этой проблемы есть решение: для этого надо заменить в файле wp-syntax.php:
$geshi = new GeSHi($code, $language); |
на код:
$geshi = new GeSHi(htmlspecialchars_decode($code), $language); |
И после этих не очень хитрых манипуляций все прекрасно работает. Надеюсь не слишком заморочил Вам голову писаниной и думаю информация будет полезной.
Удачи!
Спасибо, просто и доходчиво, давно собирался поставить плагин.