.
25 июня 2014

Битрикс форум — подключаем подсветка листинга кода SyntaxHighLighter

posted in Bitrix |

Очередное задание — на Битрикс форум посвященный Excel и скриптовому программированию под него Visual Basic попросили сделать подсветку кода.
Из готовых реализаций ничего подобного не нашел, пришлось делать самому:

  • Качаем скрипт с офсайта http://alexgorbatchev.com/SyntaxHighlighter/ и заливаем его в корень сайта в папку /syntax/
  • Подключаем нужные скрипты в темплейте чтения темы (в моем случае именно VisualBasic — скрипт shBrushVb.js)
    <script type="text/javascript" src="/syntax/scripts/shCore.js"></script>
    <script type="text/javascript" src="/syntax/scripts/shBrushVb.js"></script>
    <link type="text/css" rel="stylesheet" href="/syntax/styles/shCoreDefault.css"/>
    <script type="text/javascript">SyntaxHighlighter.all();</script>

  • Cоздаем шаблон в компонентах /bitrix/components/ bitrix/forum.message.template/templates/planeta (из дефолтного)
  • В этом шаблоне перед div porum-post-text делаем замену тега [pre] на [pre class="brush: vb;"] (скобки конечно же НЕ квадратные)
  • Правим шаблон чтения темы .../forum.topic.read/.default/template.php — в местах инклуда forum.message.template со стандартным шаблоном, заменяем на инклуд с новым шаблоном planeta

Всё!
Результат например тут.

Яндекс.Метрика