n-wp.ru — блог о WordPress
Как показать программный код в постах | SyntaxHighlighter Evolved | n-wp.ru

Как показать программный код в постах | SyntaxHighlighter Evolved

Недавно я рассказывал о плагине Auto SyntaxHighlighter, который выполняет две функции — корректно выводит программный код в тексте поста, а так же подсвечивает его разметку. Подобные плагины устраняют тот недосмотр (иначе назвать это нельзя) разработчиков WordPress, из-за которого программный код часто коверкается, становится нечитаемым и выполняемым (вместо отображения он выполняется). Есть еще масса плагинов, и одним из самых удобных является SyntaxHighlighter Evolved.

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

Код добавляется очень легко — достаточно его заключить в такую конструкцию:

[php]тут должен быть ваш код[/php]

Обратите внимание, что php — название языка (разметки) кода. Можно ограничиться только им, а можно подключать и виды разметки для других языков: java, css, html и пр.
Как и все подобные плагины, SyntaxHighlighter Evolved для вывода кода использует скрипты Java. Если Java-машина в браузере не включена, то код все равно появится в виде обычного текста, так что с его индексацией проблем никаких не будет.

Скачать
SyntaxHighlighter Evolved
вы перейдете по ссылке http://www.viper007bond.com/wordpress-plugins/syntaxhighlighter/

tiaurus

Являюсь создателем n-wp.ru — блога о WordPress для новичков. Мне интересно многое, поэтому еще я сделал 123-box.ru — блог о программах для Windows, и tiaurus.info — блог о красоте.

12 комментариев

  • Тоже пользуюсь этим плагином, добавил тег в html редактор,теперь вставка кода происходит в один клик.

  • Перепробывал много подсвечивальщиков. Все работает, все хорошо. Кроме одного глюка. При просмотре поста во вставленном коде показывается адрес моего блога с тегами noindex. В исходнике этого нет. Это добавляется в разных местах. Текст добавки неизменен. Кто-нибудь с этим сталкивался?

    • Я с таким сталкивался. Перерыл весь плагин — так и не нашел, где добавляется noindex. В итоге просто отключить чекбокс «делать ссылки кликабельными» в настройках плагина.

      • Глюк был в другом. Существует плагин Invitext. При работе он как раз и добавляет лишнее в блок кода. При отключении его — лишнее пропадает. В принципе это не глюк. Это особенность работы плагина.

        • Спасибо за ваш комментарий! Теперь и другие будут знать, в каком направлении действовать в случае возникновения вот таких вот особенностей работы плагина.

  • Почему-то в моём шаблоне плагин не выглядит так, как хотелось бы. Смотрел в сторонних шаблонах — там всё нормально. Не подскажите какие файлы используют данные плагины и почему не пашут в моём шаблоне?
    Как должно выглядеть: http://prntscr.com/1iadk
    Как выглядит у меня: http://prntscr.com/1iacd

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

      • код отображается без подсветки, без фоновой подложкии без нумерации строк. В настройках плагина всё нормально выставленно.

        • У меня такое было в одном из блогов (причем в другом блоге плагин работал без проблем). Сколько бы я ни бился, не смог решить эту проблему. Даже написал разработчику плагина: http://www.viper007bond.com/wordpress-plugins/syntaxhighlighter/#comment-233453
          В ответ он сообщил, что в файле footer.php должна присутствовать строчка

          — она является ключевой для активации скриптов плагина.
          Посмотрите, есть ли в этом файле такая строчка. Если нет, то ее нужно добавить сразу перед тегом [cci lang=»php].
          Впрочем, такая строчка у меня присутствовала, и это не решило проблему — пришлось устанавливать другой плагин (с которым тоже не все гладко, но он хоть работает).

/* ]]> */