Создание раздела инфоблока при регистрации пользователя в Битрикс

495  |  0

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

Что мы сделаем: При регистрации пользователя будем создавать раздел с его логином в инфоблоке. С помощью API методов 1С-Битрикс "OnAfterUserAdd" и "CIBlockSection"

Для этого
— Создаем новый инфоблок на сайте
— в файл /bitrix/php_interface/init.php вставляем код

<?
// Регистрируем обработчик AddSectionInBlock
AddEventHandler("main", "OnAfterUserAdd", Array("AddSectionInBlock", "OnAfterUserAddHandler"));
class AddSectionInBlock
{
    // создаем обработчик события "OnAfterUserAdd"
    function OnAfterUserAddHandler(&$arFields)
    {
        if (CModule::IncludeModule('iblock')) {
            $bs = new CIBlockSection;
            $arFieldsi = Array(
                "ACTIVE" => "Y", 
                "IBLOCK_ID" => 10, //ID инфоблока в котором создастся раздел
                "NAME" => $arFields["LOGIN"], //Название раздела с логином пользователя
                "CODE" => $arFields["LOGIN"], //Символьный код раздела с логином пользователя
                "SORT" => $SORT,
            );

            if ($ID > 0) {
                $res = $bs->Update($ID, $arFieldsi);
            } else {
                $ID = $bs->Add($arFieldsi);
                $res = ($ID > 0);
            }

            if (!$res)
                echo $bs->LAST_ERROR;
        }
    }
}
?>

Вот и все. Теперь, при успешной регистрации пользователя будет создаваться раздел в инфоблоке, названием которого будет логин пользователя.

Способы применения данного функционала достаточно обширны. Как простой пример: Это фильтровать разделы в кабинете пользователя, куда вы (как администратор) будете складывать элементы, доступные только этому пользователю.

Расскажи друзьям-то:
Уважаемый читатель! В связи с участившимся спамом в комментариях, возможность писать доступна только для зарегистрированных пользователей
Зарегистрироваться Войти Напомнить пароль

© 2011—2017 Частный вебмастер: ИП Базаров, ОГРНИП: 315784700173692. Работает на 1С-Битрикс.
Копирование материалов запрещено: "ГК РФ, часть 4, раздел VII: Права на результаты интеллектуальной деятельности".

Информация размещенная на сайте, не является публичной офертой. Политика конфеденциальности
x
Как к Вам обращаться? *
Ваша электронная почта: *
Доп. материалы (логотип, тех. задание):
 
Обзор
Текст сообщения:


Нажимая на кнопку "Отправить", Вы соглашаетесь на обработку Ваших персональных данных согласно политике конфеденциальности. Ознакомиться с которой, можно в нижнем правом углу сайта