Документация для разработчиков
Темная тема

Add

Описание и параметры

int
Add(
	array arFields
);>

Создает новую группу с параметрами, указанными в массиве arFields. Возвращает код созданной группы. На добавление нового звания параметры посетителей форума не пересчитываются. Пересчет будт происходить постепенно по мере общения посетителей на форуме. Метод статический.

Параметры функции

ПараметрОписание
arFields Массив вида Array(field1=>value1[, field2=>value2 [, ..]]), где

field - название поля;
value - значение поля.

Поля перечислены в списке полей групп. В специальное поле "LANG" заносится массив массивов полей языковых параметров групп, которые имеют аналогичную структуру.

Возвращаемое значение

Возвращает код созданной группы. В случае ошибки добавления возвращает False.

Смотрите также

Примеры использования

<?
$arFields = array("SORT" => $SORT);
$arSysLangs = array("ru", "en");
for ($i = 0; $i<count($arSysLangs); $i++)
{
	$arFields["LANG"][] = array(
		"LID" => $arSysLangs[$i],
		"NAME" => ${"NAME_".$arSysLangs[$i]},
		"DESCRIPTION" => ${"DESCRIPTION_".$arSysLangs[$i]}
	);
}
$ID = CForumGroup::Add($arFields);
if (IntVal($ID)<=0)
	echo "Error!";
?>


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
0
Леонид Захваткин
Также есть не приведенный в таблице параметр PARENT_ID.
Вот небольшой скриптик конвертации структуры разделов инфоблока в структуру групп форумов, правда только двухуровневый, т.е. если структура глубже - его надо несколько доработать :)

Код
CModule::IncludeModule("iblock");
$BID = 6; // указываем инфоблок

// Запрос секций
$rsSection = CIBlockSection::GetList(Array("SORT"=>"ASC"), Array("IBLOCK_ID" => $BID), false);
   while ($section = $rsSection->GetNext())
   {      
      $arSections[] = $section;      
   }      
   // Скрипт создания групп форумов
   CModule::IncludeModule("forum");

// ID родителя   
$lastForumGroupId = 0;
   foreach($arSections as $section) 
   {
      if (intval($section["DEPTH_LEVEL"]) == 1)
      {
         $forumGroupId = 0;      
      }   
      else
      {
         $forumGroupId = $lastForumGroupId;
      }   
      
      
      $arFields = array(
         "SORT" => $section["SORT"],
         "PARENT_ID" => $forumGroupId   
      );
      
      $arFields["LANG"][0] = array(
         "NAME" => $section["NAME"],
         "LID" => "ru",
         "DESCRIPTION" => $section["DESCRIPTION"]      
      );
      $arFields["LANG"][1] = array(
         "NAME" => "EN_NAME",
         "LID" => "en",
         "DESCRIPTION" => ""      
      );   
      
      
      if ($ID = CForumGroup::Add($arFields))
      {
         echo "Добавили группу ".$section["NAME"].", родитель - ".$forumGroupId." <br />";   
         if (intval($section["DEPTH_LEVEL"]) == 1)
         {
            $lastForumGroupId = $ID;      
         }         
      }      
      else
      {
         echo "ERROR!<br />";
      }      
}
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх