if (!in_array($arElements, $request->getPost('id'))) {
$arElements[] = $request->getPost('id');
$USER->Update($idUser, ['UF_FAVORITES' => $arElements]);
}
while ($obElement = $resultRaw->GetNextElement()) {
$arProperties = $obElement->GetProperties(false, ['CODE' => 'PRICE_M2']);
}
$arItem['PROPERTY_MY_VIDEO_SRC'] = CFile::GetFileSRC($arItem['PROPERTY_MY_VIDEO_VALUE']);
$APPLICATION->ShowViewContent('news_part_1');
// что нибудь
$APPLICATION->ShowViewContent('news_part_2');
// компонент крошек
$APPLICATION->ShowViewContent('news_part_3');
use Bitrix\Highloadblock\HighloadBlockTable as HL;
$sTableName = "hl_table_name";
$arFilter = ["UF_ORGANIZATION" => 1];
$arSelect = ["*"];
$arOrder = ["ID" => "ASC"];
$iLimit = 5;
CModule::IncludeModule("highloadblock");
$obHlBlock = HL::getList(["filter" => ["TABLE_NAME" => $sTableName]]);
if ($obHlData = $obHlBlock->fetch()) {
$obEntity = HL::compileEntity($obHlData);
$sEntityDataClass = $obEntity->getDataClass();
$obRes = $sEntityDataClass::getList([
"filter" => $arFilter,
"select" => $arSelect,
"order" => $arOrder,
"limit" => $iLimit
]);
while ($arRes = $obRes->fetch()) {
echo "<pre>".print_r($arRes, true)."</pre>";
}
}
"USE_EXT" => "Y"
use Bitrix\Main\Loader,
Bitrix\Main\LoaderException;
try {
if (!Loader::includeModule('iblock')) {
return;
}
} catch (LoaderException $e) {
return;
}
$obItems = CIBlockElement::getList(
[
'SORT' => 'asc',
'NAME' => 'asc'
],
[
'IBLOCK_TYPE' => 'type',
'IBLOCK_CODE' => 'iblockcode',
'ACTIVE' => 'Y'
],
false,
false,
[
'ID',
'CODE',
'NAME',
]
);
$aMenuLinksExt = [];
while ($arItem = $obItems->fetch()) {
$aMenuLinksExt[] = [
$arItem['NAME'],
$arItem['CODE'] . '/',
[],
[],
''
];
}
$aMenuLinks = array_merge($aMenuLinks, $aMenuLinksExt);
$aMenuLinksExt[] = [
$arItem['NAME'],
$arItem['CODE'] . '/',
[],
['UNCLICKABLE' => true],
''
];
["'](((http[s]?:)?\/\/).*?\.(jp[e]?g|png|gif|tiff|bmp))['"]
// скачиваем файл
$file = CFile::MakeFileArray('http://bipbap.ru/wp-content/uploads/2017/10/0_8eb56_842bba74_XL-640x400.jpg');
// сохраняем в папку /uploads/saved/
$savedFileId = CFile::SaveFile($file, 'saved');
// получаем ссылку
$savedFileSrc = CFile::GetPath($savedFileId);
$savedFileSrc
новый относительный URLcompare_tov(id);
<a href="#" class="to-compare" data-id="<?=$arElement['ID'];?>">Compare</a>
$(() => {
$('.to-compare').on('click', event => {
event.preventDefault();
compare_tov($(this).data('id'));
});
});
document.addEventListener("DOMContentLoaded", () => {
let compareLinks = document.querySelectorAll('.to-compare');
if (compareLinks.length) {
compareLinks.forEach(link => {
link.addEventListener('click', event => {
event.preventDefault();
let itemId = event.dataset.id;
if (itemId.length) {
compare_tov(itemId);
}
});
});
}
});
$str_IBLOCK_ELEMENT_SECTION
от них и пляшите с набором свойств для редактирования // свойство ещё не установлено - будет пусто
echo '"' . $APPLICATION->GetPageProperty('NOT_SHOW_NAV_CHAIN_CUSTOM') . '" ';
// этот метод лучше определить где-нибудь в подключаемых классах
class BufferMethods
{
public static function showCustomChain($chain)
{
global $APPLICATION;
if ($APPLICATION->GetPageProperty('NOT_SHOW_NAV_CHAIN_CUSTOM') === 'Y') {
return $chain;
} else {
return '';
}
}
}
// буферизируем Ваши хлебные крошки. Их не будет видно, они попадут в переменную $strChain
ob_start();
echo 'Здесь лежит компонент хлебных крошек, который будет появляться и исчезать в зависимости от значения NOT_SHOW_NAV_CHAIN_CUSTOM';
$strChain = ob_get_clean();
// свойство ещё не установлено, но мы используем отложенную функцию, значит будет результат в зависимости от значения
$APPLICATION->AddBufferContent(['BufferMethods', 'showCustomChain'], $strChain);
// свойство наконец установлено
$APPLICATION->SetPageProperty('NOT_SHOW_NAV_CHAIN_CUSTOM', 'Y');
// свойство уже установлено - будет значение
echo ' "' . $APPLICATION->GetPageProperty('NOT_SHOW_NAV_CHAIN_CUSTOM') . '" ';