Михаил Базаров -> Всем
вчера, 20:08
Узнать базовую цену элемента, зная его ID

Если Вы, как и я, столкнулись с реализацией списка товаров, в компоненте "catalog" на компоненте списка новостей
Просто, "великолепный" разработчик воткнул news.list в section.php комплексного компонента "каталог"
Это конечно же, полная дичь: но предположим, что переделывать все не вариант и не входит в бюджет

Задача, просто вывести цену текущего элемента каталога в news.list
Используем метод CPrice::GetBasePrice - достаточно знать только ID элемента (его мы знаем в ключе $arItem['ID'] )
<?
$ar_res = CPrice::GetBasePrice($arItem['ID']);
echo $ar_res['PRICE'].' р.';
?>

PS Переделывайте это, при первой же возможности. Использовать исключительно в рамках ограниченного бюджета и времени.
Михаил Базаров -> Всем
08.08 19:57
Сайты 24. Как пользоваться конструктором сайтов в Битрикс. Для чего они вообще нужны и как их удалять )

https://www.youtube.com/watch?v=wPfP_ZGgWoY
Сайты 24. Инструкция по конструктору лендингов/сайтов в Битрикс
Запись стрима: Инструкция по созданию лендингов в конструкторе сайтов Битрикс БУС. На примере реального лендинга конструируется сайт в модуле "Сайты 24" DISC...
Сергей Стефанович
Да от них мало толку.

Сегодня была трансляция где ты упоминал про оптимизацию сайта и сервера. Вот такого урока реально не хватает.
Как лучше настроить сервер (кэширование и тп), и как писать оптимизорованый код.
А то я как раз наткнулся на магаз в котором свойств у предложений под 500, тормозит все жесть и каждый день кеш по 30ГБ удалять надо.
Михаил Базаров
Сергей Стефанович, это сложный вопрос. На каждом большом проекте эксклюзивно нужно подходить.
Сергей Стефанович
Михаил Базаров, сложный, но нужный)) наиболее часто что приходиться делать хотя бы расскажи
Сергей Стефанович -> Всем
07.08 20:39
а сайт похорошел, скорость вообще агонь!
Михаил Базаров
Сергей Стефанович, вродебы работает. А где багуля?
Сергей Стефанович
Михаил Базаров, да каждый раз нужно авторизовываться когда на сайт захожу. Не запоминает
Михаил Базаров
Завтра починю )
Дима Капланов -> Всем
08.08 01:32
Привет всем! Ребята такой вопрос, по данному видеоуроку https://www.youtube.com/watch?v=CFnlp5...amp;t=533s
При верстке страницы, поле авторизации добавили в шаблон сайта. Все хорошо, но вот есть одна проблема, если например зайти в параметры пользователя и нажать кнопку выйти, то после выхода со страницы, забрасывает на некоторую страницу авторизации,  которая отредактирована в стандартном формате, как добиться того , что бы убрать это поле? Я не могу найти на него скрипты, даже откуда они подключаются.
Инфопортал на Битрикс#18: Регистрация и авторизация пользователей на сайте
Реализуем функционал регистрации и авторизации пользователей на сайте. Выводим данные в личном кабинете и возможность публикации материалов пользователями.
Dmitriy Ivanov -> Всем
02.08 10:32
Добрый день, восстанавливал на VDS CRM по ссылки
при восстановление БД вышла ошибка:
При переходе на сайте пишет: The script encountered an error and will be aborted. To view extended error messages, enable this feature in .settings.php.
подключение БД проверил пароль и логины правильные.
Я как понял, проблема в "max_allowed_packet" ее нужно увеличить, подскажите как это можно сделать в BitrixEvn


Михаил Базаров
Ну тут просто прав не хватает, что бы перезаписать этот файл. дайте на него полные права временно, 777
Dmitriy Ivanov
Да, права дал, с этим все ок. но бд все также, как можно создать БД через терминал? пытаюсь зайти на имя сервера/phpmyadmin но пишет Not Found  
Михаил Базаров
В веб окружении нет phpmyadmin запустите его вот так, создайте базу
https://www.youtube.com/watch?v=9__Ly6...U&t=3s (там где-то в середине рассказываю как его поставить)
Потом удалите
Битрикс веб окружение 7.1.0 (Bitrix VM): настройка под Битрикс 24, включение почты и phpmyadmin
На сайте https://camouf.ru/new_bx_site_created/phpmyadmin.php Устанавливаем новое Битрикс веб окружение на чистый сервер в Cent OS 7. Запускаем на нем типово...
Михаил Базаров -> Всем
01.08 13:42
Установка CMS keystoneJS работающей на Node.js

В большей степени оставляю это для себя, что бы закрепить.
Устанавливал на Windows

Качаем и устанавливаем node.js - https://nodejs.org/en/
Качаем и устанавливаем mongoDB - https://www.mongodb.com/download-cente...#community
В процессе установится оболочка для управления базами данных

Создаем директорию, в которую будет ставиться keystoneJS
C:/KEYSTONE/site.ru

Открываем эту директорию в командной строке
cd C:/KEYSTONE/site.ru

Ставим Yeoman
npm install -g yo

Ставим keystoneJS
npm install -g generator-keystone

Выполняем команду запуска
yo keystone

В процессе задаст вопросы по установке:
- Название проекта
- Адрес проекта
- Ставить ли модули (Блог, Галерея, Форма связи)
- Использовать ли шаблонизатор (я выбираю twig)
- Использовать ли компилятор css (я выбираю sass)
- Почта админа и пароль
- Настройки почтовой системы (пропускаем, не соглашаемся)

Выполняем первый запуск (тафталогия)
node cd C:/KEYSTONE/site.ru/keystone.js

Выполняем старт проекта
npm start

Сайт будет доступен по адресу
localhost:3000

Админка
localhost:3000/keystone/

Шаблоны сайта лежат в
C:/KEYSTONE/site.ru/templates
C:/KEYSTONE/site.ru/public

Все собирается само twig-ом и sass-ом

Все, дальше там все просто, просто делаем сайт. Уж не сложнее битрикса устроена CMS ка)
Сайт CMS-ки с документацией https://keystonejs.com


Сергей Стефанович
Решил появаскриптить?)
Михаил Базаров
Сергей Стефанович,

Да, немножко
Dmitriy Ivanov -> Всем
31.07 14:30
Добрый день, подскажите какие минимальные требование должны быть VDS для Битрикс24?

есть ли инструкция по установке и настройке на VDS сервер?
Михаил Базаров
Минимальные:
- 2048 оперативной памяти
- два ядра CPU
- 5 Гб на диске (свободных)
На счет диска, само собой просто тех минимум если не будете хранить документы на дисках.

Ставится так же как и управление сайтом, там нет особых отличий (если на Битрикс веб окружение)
Dmitriy Ivanov -> Всем
24.07 21:27
Добрый вечер, пишу второй раз, прошу не банить!

Помогите, подскажите как можно решить такую проблему:

При создание новости, есть "голочка добавить в популярное" как сделать что - бы, если галочка не стоит, то статья не отображается в блоке "div популярное"

а если галочку поставить в "статье" то она встает выше всех остальных статей под "div популярное"

Я пробывал через if $arParams и arResult, но не как не выходит, не понимаю как правильно надо прописать условие.
Михаил Базаров
В настройках компонента, в правилах сортировки выбрать "Другое" и вписать
property_КОД_СВОЙСТВА_ПОПУЛЯРНОЕ
и выбрать "По возрастанию"
Михаил Базаров -> Всем
18.07 12:49
Шаблон для news.line иммитирующий работу табов (вкладок) из элементов инфоблока
Все нужное внутри (стили, js И так далее)

Пример работы, у меня в разделе "Обо мне" Обо мне


Файлы:
tabs.zip (5.38 КБ)
Dmitriy Ivanov -> Всем
10.07 00:41
Добрый вечер!
в ИБ создал CheckBox, "добавить в популярное"
Подскажите как правильно прописать в news:list: если CheckBox "стоит галочка" то статья добавляется в блок

Dmitriy Ivanov
Не работает, добавил выше вызова news:list и статьи все пропали

нужно что бы когда галочка была активна в новости, но она попадала под блок "Популярныое", а если галочки нет, то "Популярное" пропадало  
Сергей Стефанович
у меня таким образом пашет все
Dmitriy Ivanov
<?
global $arrFilter;
$arrFilter = Array("ACTIVE" => "Y", "PROPERTY" => array('НАЗВАНИЕСВОЙСТВА' =>'Y'));
?>

Оно работает, если галочка не стоит то статья не отображается, но как создать условие что бы статьи всегда отображались, а когда ставишь галочку то статья становится выше всех?

Я пробывал через if $arParams и arResult, но не как не выходит, не понимаю как правильно надо прописать условие.
Сергей Стефанович -> Всем
07.07 15:05
Как отправить письмо администратору о новом заказе и вывести в нем нужные свойства.
кто не понял о чем речь: письма о заказе приходят покупателю, а же хочу чтобы в отдел продаж приходили письма о заказах, но шаблон у них должен быть свой. Хочу чтобы в отдел продаж вместе с корзиной поступали все данные о покупателе. Так проще обрабатывать заказы
Oleh -> Всем
05.07 15:51
Как такой блок реализовать с адаптивностью bootstrap?
Snimok-ekrana-2018_07_05-v-15.38.53.png
Они получаются у меня один под одним.
Snimok-ekrana-2018_07_05-v-15.50.10.png

sass
sass.png
.contacts
  float: right
  a
     color: $text
     font-weight: bold
     &:hover
        text-decoration: underline
  i
     float: left
     margin-right: 10px
     width: 38px
     height: 33px
     background-color: #41bf00
     background-repeat: no-repeat
     background-position: center
  &-phone
     i
        background-image: url("../img/icon_phone.svg")
  &-mail
     i
        background-image: url("../img/icon_mail.svg")

html
html.png
<div class="col-md-6">
<div class="contacts">
     <div class="contacts-phone">
        <i></i>
        <a href="#">+38 (048) -13</a>
        <a href="#">+38 (048) -13</a>
     </div>
     <div class="contacts-mail">
        <i></i>
        <a href="#">salil.com</a>
     </div>
  </div>
</div>

Теги:
Михаил Базаров
Прям даже тяжело сказать. Взять и сверстать, если не получается: сначала попробуйте сверстать адаптивно, без bootstrap
В общем, чисто подтяните знания верстки- там ни чего сложного нет
Dmitriy Ivanov -> Всем
04.07 22:14
Вечер добрый!
Есть "ИБ - Каталог" в нем есть свойство "Старая цена"
Подскажите пожалуйста, как/каким способом можно  "Catalog:section" вывести только те товары у которых прописано свойство "Старая цена"?
Михаил Базаров
Через глобальные фильтры, проверять это свойство на пустоту/наличие
https://camouf.ru/blog-note/4717/
Dmitriy Ivanov
Все очень просто как всегда!)) спасибо!
Помогло: <?$GLOBALS['arrFilter'] = array('ACTIVE'=>'Y','!PROPERTY_OLDPRICE' => false);?>
Артур -> Всем
03.07 18:50
Всем привет.
Подскажите пожалуйста, как реализовать в списке товаров ( catalog.section )
такой функционал: при клике на "плюс" -  товар ложится в корзину, при клике на "минус" - удаляется, к примеру нажал 8 позиций и 8 штук лягли сразу  см. скрин https://yadi.sk/i/-HwpHgdy3YivSS
Спасибо
2018-07-03_22-49-31.png
View and download from Yandex.Disk
Михаил Базаров
Просто чере API вызывать события
https://dev.1c-bitrix.ru/api_help/sale...basket.php
Сергей Стефанович -> Всем
02.07 10:47
Народ. Простите что повторяюсь. но очень надо, а на форумах ничего толкового по этой проблеме нету

как сделать так, чтобы у каждого торгового предложения была отдельная страница, которая формировалась из символьного кода предлложения?
на этом сайте это реализовано.
Сергей Стефанович
Dmitriy Ivanov, простите меня Дмитрий, но вы задали глупый вопрос  
Михаил Базаров
Без доработки шаблона ни как.
Нужно вывести сами предложения, в отдельном разделе сайта.
В шаблоне детального просмотра товара (в основном каталоге), передать ссылку на детальную страницу предложения.
Там распечатайте массив предложений, по памяти $oneOfferr - в нем будет символьный код предложения (как минимум ID будет)
И передайте как ссылку, при клике на предложение. В компоненте, который выводит предложения, настройки ЧПУ должны совпасть с этой ссылкой- из основного каталога

PS Прочитал и сам запутался) Но так или иначе это решается не с кандачка.
Сергей Стефанович
Михаил Базаров, я это уже сделал. Вот только после перехода по ссылке ошибка.

на сайте примере это фишка работает как-то через кеш, при клике формируется страница предложения и ложится в кеш. в итоге за сутки кеш разрастается на 15+ ГБ (на сайте 12к торговых предложений), поэтому по примеру оттуда делать не хочу.

вот тут можно увидеть мой прогресс. Мне только осталось додуматься как сделать так, чтобы при клике по артикулу (он же ссылка) открывалась страница торгового с его свойствами и СЕО

Заказчик оптовик, ему хочется чтобы покупателям можно было добавить товар в корзину не заходя на его страницу. А страницы эти чисто для СЕО
Dmitriy Ivanov -> Всем
02.07 10:56
Добрый день, кто может подсказать, как менять шапку сайта:
на главной в шапке нет фона, но на всех остальных страницах в шапке должен быть фон, как правильно это сделать?
Фото:
Сергей Стефанович
Создайте доп. свойства типа файл у страниц (в маркетплейсе даже есть модуль для этого). И тогда вы сможете задавать для каждой страницы свой фон через адмику просто вывев в нужном месте верстки свое свойства
Сергей Стефанович
ну или просто условие, чтобы не выводить на главной

<?if($APPLICATION->GetCurDir()==SITE_DIR):?>на главной<?else:?>на остальных<?endif;?>
Dmitriy Ivanov -> Всем
30.06 11:27
Добрый день, очень нужна помощь!

Подскажите как в компоненте " bitrix:news.list " сделать так, что бы первая новость была с картинкой, а все последующие обычным текстом,  сверстал шаблон:
но не понимаю как разделить в вывод новостей с разными блоками(классами)
Фото:
Михаил Базаров
Можно счетчик назначить например

$i = 0;
В самой новости обвернуть картинку в условие
if ($i++ == 1) {
вывод картинки
}
myrzabekov7 -> Всем
27.06 01:01
Товарищи! Вы-ру-чай-те! Тут такая ситуация с регистрацией + добавления данных. Получается нужно на портале (подтяный на 1С-Битрикс) зарегесрироваться как предприятие и изменять свои данные. Самый интересный момент данные каждого 50000 предприятия уже импортированны  в highload блок, но нужно сделать так чтобы зарегестрированное предприятие могло изменять свои данные там в хайлайт блоке!
Еще вопрос как добавить доп поле на регистриацию???? Спасибо друзья!!!  
Михаил Базаров
Лучше бы вы их в обычный инфоблок импортировали. Название раздела это логин этого предприятия
Элементы раздела (логина) это данные предприятия- ну и проверка доступа
Если логин предприятия совпадает с текущим разделом (который логин) - право на редактирование элементов
Дальше, просто верстка. В итоге бекенд это строчек 20 кода (суммарно) а фронтенд... Зависит от дизайна- но тупо верстка
Михаил Базаров
И вот это в помощь
https://camouf.ru/blog-note/2518/

В общем- Вы не по назначению использовали HL блоки
Dmitriy Ivanov -> Всем
25.06 11:28
Подскажите как изменить в "Детальном просмотре новости" Header сайта?
Михаил Базаров
Очень не понятно написали- не подскажу. Опишите подробнее- лучше отдельной темой на форуме
https://camouf.ru/forum/forum7/
Dmitriy Ivanov -> Всем
23.06 12:27
Добрый день, Михаил!

Пожалуйста дайте совет что не правильно делаю и как сделать

на одной странице вывожу два копонента "Новости - bitrix:news"  в настройках "Тип инфоблока у всех один"  - инфоблоки: у одного "Блог" у другого "Популярные"

Статьи там разные( http://sergeytereshkin.ru/blog/) но когда переходишь на детальный просмотр  статьи с "Популярных", то в детальном просмотре выводится "Элемент не найден!", "компанента Блог"  Как их правильно отделить? но что бы анонсы  популярных и остальных статей были на одной странице?

И как вывести количество просмотров у каждой статьи? использовал SHOW_COUNTER но не выводится, на каклоге это работает.

Спасибо!!
Фото:
Блог Терёшкина Сергея
Блог Терёшкина Сергея
Dmitriy Ivanov
Количество просмотров сделал.

Нужно в компанент Bitrix:news
изменить  это выводит для списка новостей "LIST_FIELD_CODE" => array(0=>"",1=>"",),
а это выводит в детальном просмотре  "DETAIL_FIELD_CODE" => array(0=>"",1=>"",),

их нужно изменить на
"LIST_FIELD_CODE" => array(0=>"SHOW_COUNTER",1=>"",),
"DETAIL_FIELD_CODE" => array(0=>"SHOW_COUNTER",1=>"",),
Dmitriy Ivanov
Задачу решилась.
Nxn -> Всем
22.06 03:36
Добрый день

Подскажите пожалуйста. А как вывести второстепенное меню на второстепенной странице?

Пример:
У нас есть раздел "О компании", а в нем разделы: "История", "Руководство", "Структура".

Так вот это меню на главной не нужно, оно используется только в разделе "О компании". Но если я вставляю меню через Битрикс уже в разделе "О компании", то оно попадает в область редактирования страницы. Как его заинклюдить так, чтобы через редактирование страницы был виден только контент, а не весь шаблон страницы?

Понимаю, что вопрос, скорее всего, глупый, но всё же буду очень благодарен за ответ или ссылочку :)
Михаил Базаров
Можно вставить в шаблон сайта
Можно в индексную страницу раздела, но за пределами области редактирования- просто инкапсулировать
Михаил Базаров -> Всем
20.06 19:58
Скоро!

Фото:
Сергей Стефанович
агонь
Сергей Стефанович -> Всем
18.06 23:16
как сделать так, чтобы у каждого торгового предложения была отдельная страница, которая формировалась из символьного кода предлложения?
на этом сайте это реализовано.
Кресла для персонала купить на SmartOffice.by
Заказать офисные кресла для персона Минске по низким ценам. Доставкой по Беларуси.
Михаил Базаров -> Всем
18.06 03:57
Вывести разделы инфоблока по первым буквам (алфавитный указатель типа) не меняя структуру каталога.

Например: у нас есть инфоблок с большим количеством разделов (картинка 1).
И мы хотим, на выводе на сайте разбить разделы по буквам (картинка 2).

Самый простой способ, это конечно же добавить буквы в разделы каталога, и перераспределить сами разделы по своим буквам.
Но... а если и разделов более 2000-ч и вообще не вариант, так менять структуру инфоблока.

Можно поступить следующим образом:
В шаблоне компонента catalog.section.list (Разделы инфоблока) удаляем все и меняем на такой код:
<?
foreach ($arResult["SECTIONS"] as $arSectionArray) {
      $sectFName = $arSectionArray['NAME'];
      $sectFLetter = mb_substr($sectFName, 0, 1, 'UTF-8');
      $arrayFirsletter .= '\'' . $sectFLetter . '\',';
}

eval('$FirstLetter=array(' . $arrayFirsletter . ');');
extract($FirstLetter);
$uniuLetter = array_unique($FirstLetter);

foreach ($uniuLetter as $onlyOnceLetter) {
       echo '<h3>' . $onlyOnceLetter . '</h3>';
      foreach ($arResult["SECTIONS"] as $arSection) {
         if (mb_substr($arSection['NAME'], 0, 1) == $onlyOnceLetter) { ?>
             <a href="<?= $arSection["SECTION_PAGE_URL"] ?>">
                 <?echo $arSection['NAME']; ?>
            </a>
          <?
          }
     }
}
?>

Пояснения:

Сначала собираем первые буквы всех разделов в одну переменную $arrayFirsletter , так как названия разделов
могут быть как на латинице, так и на кириллице используем mb_substr- с помощью которого и "отрубили" первые буквы названий разделов
foreach ($arResult["SECTIONS"] as $arSectionArray) {
      $sectFName = $arSectionArray['NAME'];
      $sectFLetter = mb_substr($sectFName, 0, 1, 'UTF-8');
      $arrayFirsletter .= '\'' . $sectFLetter . '\',';
}

Далее, с помощью eval, загоняем все буквы в массив array. Так как первые буквы разделов могут повторяться. Переводим array в array_unique - он отберет только уникальные буквы (то бишь без повторов)
eval('$FirstLetter=array(' . $arrayFirsletter . ');');
extract($FirstLetter);
$uniuLetter = array_unique($FirstLetter);

Собственно выводим эти буквы с помощью foreach
foreach ($uniuLetter as $onlyOnceLetter) {
       echo '<h3>' . $onlyOnceLetter . '</h3>';

Внутри которого еще один foreach - который отберет все разделы, начинающиеся на конкретную букву, ну и ссылка на раздел в каталоге.
Если первая буква названия раздела, совпадает с переменной $onlyOnceLetter (в которой, собственно первая буква)
foreach ($arResult["SECTIONS"] as $arSection) {
         if (mb_substr($arSection['NAME'], 0, 1) == $onlyOnceLetter) { ?>
             <a href="<?= $arSection["SECTION_PAGE_URL"] ?>">
                 <?echo $arSection['NAME']; ?>
            </a>
         



Фото:
Михаил Базаров
Кого коробит использование eval. В принципе не рекомендую им злоупотреблять.
Можно сразу загнать результат работы foreach в массив

$FirstLetter   = array();
foreach ($arResult["SECTIONS"] as $arSectionArray) {
     $sectFName = $arSectionArray['NAME'];
     $sectFLetter = mb_substr($sectFName, 0, 1, 'UTF-8');
     $FirstLetter[]   = $sectFLetter;
}
Сергей Стефанович -> Всем
13.06 13:40
Всем привет. Кто-нибудь знает способ переноса всех товаров с их торговыми предложениями с одного магазина в другой. Чтобы при этом оставалась связь между ними
Сергей Стефанович
так и делал, но пропадают связи между товаром и его торговыми предложениями  
Михаил Базаров
По идее не должны бы. Вчера подобное делал, нужно сначала загрузить каталог а потом уже предложения.  
Сергей Стефанович
пробовал, не вышло.
проблема уже не актуальна, спасибо за помощь  
Сергей Стефанович -> Всем
17.06 14:50
как сделать так, чтобы после фильтрации умным фильтром, показывался не весь товар со всеми его торговыми предложениями, а показывались только торговые предложения которые попадают под критерии фильтрации  
Михаил Базаров
Поотключать вывод в умный фильтр в настрроках свойств инфоблока. Можно в разделе "Магазин" - там быстрее чекбоксы поснимать можно
Сергей Стефанович
не сработало, выводится товар и все предложения его, в числе которых есть предложения удовлетворяющие критериям фильтрации.

у меня торговые предложения выводятся в catalog.section списком, у каждого торгового предложения выводятся свойства и кнопка купить.

Еще вопрос. как сделать так, чтобы у каждого торгового предложения была отдельная страница, которая формировалась из символьного кода предлложения.
Анатолий Теорский -> Всем
15.06 06:50
Добра всем, подскажите способ как можно ограничить пользователя ( зареганого ) сделать то или иное действие?
Например нужно чтоб пользователь мог только один раз нажать на кнопку чтоб сгенерировать купон, чтоб при сбросе кеша и обновлении страници не мог снова проделать это же действие.. Можно ли как то помечать пользователей что они уже проделывали подобное действие?? Спасибо заранее.
Михаил Базаров
Как вариант, перемещать его в группу которая не может генерировать купоны. Вызывать событие по клику
https://dev.1c-bitrix.ru/api_help/main...ents#group
Так, первая пришедшая мысль.
Антон Сурнин Всем
13.06 15:29
Добавил 1 фото в альбом: Новый альбом
Артур -> Всем
30.05 21:38
Всем привет.
подскажите пожалуйста решение задачи - чпу для умного фильтра. куда копать, что делать?)

Михаил Базаров -> Всем
27.05 17:48
Получить данные о текущем разделе каталога и вывести прямо в section.php

Если нужно вывести данные о разделе: Картинку, описание, любое пользовательское поле
прямо в section.php

Можно использовать вот такую наработку:

В section.php , в самый верх добавляем
$arResult['SECTION_ID'] = CIBlockFindTools::GetSectionID(
                   $arResult['VARIABLES']['SECTION_ID'],
                   $arResult['VARIABLES']['SECTION_CODE'],
                   array('IBLOCK_ID' => $arParams['IBLOCK_ID'])
);
- Здесь мы занесли в переменную $arResult['SECTION_ID'] индитификатор текущего раздела каталога (в котором находится пользователь)


Далее, зная это ID получаем все данные о текущем разделе, методом CIBlockSection::GetList
$sectionResult = CIBlockSection::GetList(array("SORT" => "ASC"),
     array("IBLOCK_ID" => $arParams["IBLOCK_ID"], "ID" => $arResult["SECTION_ID"]), false,
          $arSelect = Array(UF_*)
);
- В UF_* храняться все пользовательские\дополнительные поля


Далее, зогоняем все нужные данные в переменные
while ($sectionProp = $sectionResult->GetNext()) {
   $sectDescript = $sectionProp['DESCRIPTION'];  // Описание раздела
   $sectPict = $sectionProp['PICTURE'];  // Картинка раздела
   $ufLink = $sectionProp['~UF_LINK']; // Пользователькое поле с кодом UF_LINK- в html формате
   $ufText = $sectionProp['UF_TEXT']; // Пользователькое поле с кодом UF_TEXT
}

А далее используем эти переменные в любом месте section.php
<?
//Картинка (с уменьшением)
if (!empty($sectPict)) {
   $renderImageSect = CFile::ResizeImageGet($sectPict, Array("width" => '1200', "height" => '400'), BX_RESIZE_IMAGE_EXACT); ?>
        <img src="<?= $renderImageSect["src"] ?>">
<?}?>


<?
//Описание
if (!empty($sectDescript)) {
   echo $sectDescript;
}
?>

PS Чуть позже, будет заметка в блоге- более развернутая


Александр Силуянов -> Всем
21.05 16:50
Всем привет!
На основании этой заметки https://camouf.ru/blog-note/6076/?sphr...e_id=28572 сделал добавление в избранное с помощью ajax.
Появилась небольшая проблема в catalog.section - сбрасывается стиль кнопки, которая добавляет в избранное((
Конструкция приведенная в заметке работает для карточки товара, а как сделать это в списке товаров?
Пробовал так:
<?
//Проверяем, есть ли данный товар в отложенных
$curProductId = $arElement['ID'];
$dbBasketItems = CSaleBasket::GetList(
    array(
        "NAME" => "ASC",
        "ID" => "ASC"
    ),
    array(
        "FUSER_ID" => CSaleBasket::GetBasketUserID(),
        "LID" => SITE_ID,
        "PRODUCT_ID" => $curProductId,
        "ORDER_ID" => "NULL",
        "DELAY" => "Y"
    ),
    false,
    false,
    array("PRODUCT_ID")
);
while ($arItems = $dbBasketItems->Fetch())
{
    $itInDelay = $arItems['PRODUCT_ID'];
}
?>
но тогда переменная $itInDelay у всех товаров почему-то одинаковая. Ну в моем случае 64. Что я делаю не так?
Заранее благодарен!

Михаил Базаров
Сбрасывайте ее для каждого товара
В самом конце цикла
<?
unset($itInDelay);
?>
Александр Силуянов
Михаил Базаров, благодарю! Работает!
Михаил Базаров -> Всем
16.05 13:31
Если не проходит чек в ОФД. Можно включить запись лога, для дальнейшего анализа.

В файле
/bitrix/modules/sale/lib/cashbox/manager.php

Нужно переключить
const DEBUG_MODE = false;
в
const DEBUG_MODE = true;

Лог будет писаться в базу данных, в таблицу
b_sale_cashbox_err_log

Что бы не устанавливать phpmyadmin, можно воспользоваться его аналогом в админке битрикс
Настройки - Производительность - Таблицы

Сохранить и поделиться: