Парсер bb-кодов в битриксе

Понадобилось тут мне для одной задачки выводить текст, который был введен с помощью LHE-редактора и, соответственно, хранится с BB-кодами вместо html-сущности. Для перевода такого текста в html у битрикса есть специальный парсер

Понадобилось тут мне для одной задачки выводить текст, который был введен с помощью LHE-редактора и, соответственно, хранится с BB-кодами вместо html-сущности. Для перевода такого текста в html у битрикса есть специальный парсер.

Маленький пример из компонента "bitrix:idea.detail"

$p = new blogTextParser(false, $arParams["PATH_TO_SMILE"]);
						
$res = CBlogImage::GetList(array("ID"=>"ASC"),array("POST_ID"=>$arPost['ID'], "BLOG_ID"=>$arBlog['ID'], "IS_COMMENT" => "N"));
while ($arImage = $res->Fetch())
	$arImages[$arImage['ID']] = $arImage['FILE_ID'];

$arParserParams = Array(
	"imageWidth" => $arParams["IMAGE_MAX_WIDTH"],
	"imageHeight" => $arParams["IMAGE_MAX_HEIGHT"],
);
if($arPost["DETAIL_TEXT_TYPE"] == "html" && COption::GetOptionString("blog","allow_html", "N") == "Y")
{
	$arAllow = array("HTML" => "Y", "ANCHOR" => "Y", "IMG" => "Y", "SMILES" => "Y", "NL2BR" => "N", "VIDEO" => "Y", "QUOTE" => "Y", "CODE" => "Y");
	if(COption::GetOptionString("blog","allow_video", "Y") != "Y")
		$arAllow["VIDEO"] = "N";

	$arResult["Post"]["textFormated"] = $p->convert($arPost["~DETAIL_TEXT"], false, $arImages, $arAllow, $arParserParams);
}
else
{
	$arAllow = array("HTML" => "N", "ANCHOR" => "Y", "BIU" => "Y", "IMG" => "Y", "QUOTE" => "Y", "CODE" => "Y", "FONT" => "Y", "LIST" => "Y", "SMILES" => "Y", "NL2BR" => "N", "VIDEO" => "Y");
	if(COption::GetOptionString("blog","allow_video", "Y") != "Y")
		$arAllow["VIDEO"] = "N";

	$arResult["Post"]["textFormated"] = $p->convert($arPost["~DETAIL_TEXT"], false, $arImages, $arAllow, $arParserParams);
}
Количество показов: 5399
25.09.2015

Возврат к списку

Если вам была полезна статья можете отблагодарить автора:
Ethereum:

0x16Df809287333C49D3A237296C6248A6c08702Bc

Разработка сайта

Подайте заявку на разработку сайта на базе готового решения от компании 1С-Битрикс или одного из партнеров компании. Максимально подробно опишите, чему будет посвящен сайт, если это интернет-магазин - что он будет продавать, нужна ли мультиязычность, будут ли разные типы цен (розница, опт, крупный опт), будет ли интеграция с 1С, будет ли выгрузка товаров на различные торговые площадки...

Сопровождение сайта

Вы можете подать заявку на сопровождение вашего сайта на базе 1С-Битрикс. Сопровождение включает в себя: проверка актуальности обновлений сайта, проверка актуальности резервной копии, консультации по сайту. Опишите в заявке, какие еще объемы планируются на сопровождении и на какой срок вы планируете заключить договор на сопровождение - мы подберем подходящий вам бюджет на сопровождение

Работы по сайту

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