Здесь собраны основные и самые часто используемые функции Bitrix API, которые нужны в процессе разработки сайтов на базе Bitrix Framework. Статья будет периодически обновляться.
$APPLICATION->ShowTitle();
$APPLICATION->ShowTitle(false);
$APPLICATION->ShowHead();
SITE_TEMPLATE_PATH
$img = CFile::GetPath($arItem["DETAIL_PICTURE"]);
BX_RESIZE_IMAGE_PROPORTIONAL - Сохранение пропорций
BX_RESIZE_IMAGE_EXACT - Cохранение пропорций с обрезанием по заданной ширине и высоте;
BX_RESIZE_IMAGE_PROPORTIONAL_ALT - масштабирует с сохранением пропорций за ширину при этом принимается максимальное значение из высоты/ширины, размер ограничивается $arSize, улучшенная обработка вертикальных картинок.
$arResult["DETAIL_PICTURE"] = CFile::ResizeImageGet($arResult["DETAIL_PICTURE"], Array("width" => Ширина, "height" => Высота), BX_RESIZE_IMAGE_PROPORTIONAL, false);
$APPLICATION->SetAdditionalCss(SITE_TEMPLATE_PATH."/css/catalog.css"); $APPLICATION->AddHeadScript(SITE_TEMPLATE_PATH."/js/jquery-ui.min.js");
use Bitrix\Main\Page\Asset; Asset:getInstance()->addCss(SITE_TEMPLATE_PATH."/css/catalog.css"); Asset:getInstance()->addJs(SITE_TEMPLATE_PATH."/js/jscript.js");
function dump($var, $die=false, $all=false) { global $USER; if( ($USER->GetID()==1) || ($all==true) ) { echo '< pre >'; print_r($var); echo '< /pre >'; } if($die) die('hello'); }
$postTemplate = 92; // ID почтового шаблона $arEventFields = array( // Свойства "EMAIL" => $_POST['email'], "FIO" => $_POST['fio'], "PHONE" => $_POST['phone'], "COMMENT" => $_POST['comment'] ); CEvent::Send("FEEDBACK_FORM", "s1", $arEventFields, $postTemplate);
$APPLICATION->IncludeComponent( "bitrix:main.include", "", Array( "AREA_FILE_SHOW" => "file", "MODE" => "php", "PATH" => "/local/include/phone.php" ) );
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
foreach($arResult['PROPERTIES']['ELEMENTS']['VALUE'] as $key=>$element) { $arraySize = count($element); // Количество элементов в массиве. $arSort = array('DATE_CREATE' => 'DESC'); $arSelect = Array("ID", "IBLOCK_ID", "NAME", "DATE_ACTIVE_FROM", "DETAIL_PICTURE", "PROPERTY_EMAIL"); $arFilter = Array("IBLOCK_ID"=> IBLOCK_ELEMENTS_ID, "ID" => $element, "ACTIVE"=>"Y"); $dbFields = CIBlockElement::GetList($arSort, $arFilter, false, Array("nPageSize"=>$arraySize), $arSelect); while($dbElement = $dbFields->GetNextElement()) { $arResult["ELEMENTS"][$key] = $dbElement->GetFields(); $arResult["ELEMENTS"][$key]["DETAIL_PICTURE"] = CFile::GetPath($arResult["ELEMENTS"][$key]["DETAIL_PICTURE"]); } }
CIBlockElement::CounterInc($arResult["ID"]); $res = CIBlockElement::GetByID($arResult["ID"]); if($ar_res = $res->GetNext()) echo $ar_res[SHOW_COUNTER];