Меню
RSS
Серия 3: Создаем персональный раздел, выводим компонент добавления объявлений
 
Серия 3: Создаем персональный раздел, выводим компонент добавления объявлений

Чеклист:


Создаем структуру персонального раздела
Выводим форму добавления объявления
Выводим список объявлений пользователя
 
Пригодится для видео
Добавление цены к добавленному товару:
Код
 $arFields = Array(
      "MODIFIED_BY"    => $USER->GetID(), // элемент изменен текущим пользователем
      "IBLOCK_SECTION_ID" => false,          // элемент лежит в корне раздела
      "IBLOCK_ID"      => 4,
      "NAME"           => $row[3],
      "ACTIVE"         => "Y",            // активен
      "PREVIEW_TEXT"   => $row[5],
      "DETAIL_TEXT"    => $row[4],
   );
   
   if($last_el_id = $el_ob->Add($arFields))
   {
      echo 'New ID: ' . $last_el_id . '<br>';

      $arFields = array(
         "ID" => $last_el_id, 
         "VAT_INCLUDED" => "Y"
      );

      if(CCatalogProduct::Add($arFields))
      {
         echo "Добавили параметры товара к элементу каталога " . $last_el_id . '<br>';
         
         $arFields = Array(
            "PRODUCT_ID" => $last_el_id,
            "CATALOG_GROUP_ID" => 1,
            "PRICE" => $row[6],
            "CURRENCY" => "RUB",
         );
         CPrice::Add($arFields);
      }
      else
         echo 'Ошибка добавления параметров товара<br>';
   }
   else
      echo 'Error: ' . $el_ob->LAST_ERROR

Вариант добавления цены на D7
Код
$result = \Bitrix\Catalog\Model\Product::add([
         'external_fields' => [
            'IBLOCK_ID' => ID_торгового_каталога, // необязательный ключ, минус 1 запрос к базе
         ],
         'fields' => $fields,
      ]);

Получения разделов инфоблока с D7
Код
$arResult['SECTIONS'] = \Bitrix\Iblock\SectionTable::getList(array(
    'filter' => array(
        'IBLOCK_ID' => 14,
        'DEPTH_LEVEL' => 2,
    ),
    'select' =>  array(
        'ID', 'NAME'
    ),
))->fetchAll();
Изменено: Михаил Базаров - 13.03.2024 14:06:38
Читают тему
Форма ответов
Текст сообщения*
Перетащите файлы
Ничего не найдено
Файл
 

Блог-note: заметки разработчика

Получить и вывести пользовательские свойства склада в 1С-Битрикс

Задача: вывести пользовательские свойства в подробном описании склада. При этом, есть и множественные и одиночные поля.

Настройка push уведомлений через Firebase в приложении Apache Cordova

Задача: Apache Cordova предоставляет удобный способ разработки кроссплатформенных мобильных приложений. В данной статье ...

Заполнить поля пользователя из свойства заказа, на примере ФИО

При создании заказа покупатель заполняет поле "ФИО". Необходимо скопировать эти данные в профиль пользователя (не путать...

Вывести дату окончания скидки в карточке товара

Если нужно вывести информацию о скидке в карточке товара, можно воспользоваться методом CCatalogDiscount::GetList. Данны...

Установка вебсервера на Apple Silicon (нативный ARM стек), оптимизированный для 1С-Битрикс.

Появилась задачка, установить стек MAMP (macOS, Apache, MYSQL, PHP) на рабочий ноутбук с процессором Apple Silicon M1. В...

Сгенерировать скидочные купоны, при заказе и отправить на почту

Задача: после того как пользователь сделал заказ, нужно сгенерировать одноразовые купоны для скидки (правила корзины) и ...

Базовая защита "Битрикс виртуальная машина" от DDoS атак.

Данный способ защиты не панацея, и скорее всего не спасет от профессиональной DDoS атаки, когда ваш сервер на CentOS под...

Получение токена доступа API Firebase (HTTP v1) с помощью PHP для отправки push-уведомлений.

До июня 2024 года API Firebase использовал постоянный токен доступа, который можно было получить один раз в консоли. Одн...

Настройка выгрузки товаров в Яндекс Маркет с сайта Битрикс

Настройка выгрузки в Яндекс маркет в формате yml, выполняется достаточно просто, кроме одной заморочки: в типовой постав...