В 1С-Битрикс BB код используется для форматирования текста в различных модулях, таких как форумы, задачи, блоги и комментарии. Для его обработки используется класс CTextParser
.
Вот несколько основных правил использования BB кода:
1. Форматы:
[b]текст[/b]
— жирный текст.[i]текст[/i]
— курсивный текст.[u]текст[/u]
— подчеркнутый текст.[s]текст[/s]
— зачеркнутый текст.[url=http://example.com]текст[/url]
— ссылка.[img]http://example.com/image.jpg[/img]
— картинка.[quote]текст[/quote]
— цитата.[code]код[/code]
— блок кода.[list][*]элемент 1[*]элемент 2[/list]
— список.[color=red]текст[/color]
— текст с цветом.
2. Класс CTextParser
:
- Для парсинга BB кода используется класс
CTextParser
. - Создайте экземпляр класса:
$parser = new CTextParser();
- Установите правила парсинга:
$parser->allow = array(
"HTML" => "N",
"ANCHOR" => "Y",
"BIU" => "Y",
"IMG" => "Y",
"QUOTE" => "Y",
"CODE" => "Y",
"FONT" => "Y",
"LIST" => "Y",
"SMILES" => "Y",
"NL2BR" => "Y",
"VIDEO" => "Y",
"TABLE" => "Y",
"CUT_ANCHOR" => "N",
"ALIGN" => "Y",
);
- Конвертируйте текст с BB кодом в HTML:
$html = $parser->convertText($text);
3. Примеры:
// Преобразование BB кода в HTML
$text = "[b]Жирный текст[/b] [i]Курсивный текст[/i]";
$parser = new CTextParser();
$parser->allow = array("HTML" => "N", "ANCHOR" => "Y", "BIU" => "Y");
$html = $parser->convertText($text);
echo $html; // Вывод: <b>Жирный текст</b> <i>Курсивный текст</i>
// Добавление ссылки
$text = "Ссылка на [url=http://example.com]сайт[/url]";
$parser = new CTextParser();
$parser->allow = array("HTML" => "N", "ANCHOR" => "Y");
$html = $parser->convertText($text);
echo $html; // Вывод: Ссылка на <a href="http://example.com">сайт</a>
// Добавление картинки
$text = "Картинка: [img]http://example.com/image.jpg[/img]";
$parser = new CTextParser();
$parser->allow = array("HTML" => "N", "IMG" => "Y");
$html = $parser->convertText($text);
echo $html; // Вывод: Картинка: <img src="http://example.com/image.jpg">
4. Дополнительные возможности:
- Вы можете использовать user fields в BB коде.
- Можете настроить максимальную длину текста для парсера:
$parser->maxStringLen = 100;
. - Можете отключить смайлики:
$parser->allow["SMILES"] = "N";
.
5. Важные моменты:
- Всегда проверяйте права пользователя на использование BB кода перед его обработкой.
- Экранируйте данные пользователя перед выводом на страницу.
- Используйте параметр
PRESET
для настройки правил парсинга.
Надеюсь, эта информация поможет вам использовать BB код в 1С-Битрикс правильно и безопасно.