Wiki
Настройка модуля
Детальное описание способов работы и примеры работы есть в курсе Контент-менеджер.
Для настройки модуля Wiki перейдите на страницу Настройки > Настройка Продукта > Настройки модулей > Wiki:

На закладке Настройки можно запретить использование визуального редактора при создании или редактировании статей, а также указать максимальные ширину и высоту изображений, которые получатся при ресайзе Resize - изменение размера. загружаемых картинок.
На закладке Социальная сеть, если планируется использование Wiki в рамках Социальной сети,
нужно указать
инфоблок для Wiki групп, а так же ID форума, который будет использоваться для комментариев статей Wiki в группах.
На закладке Доступ настраиваются права работы групп пользователей со страницами Wiki.
Пользовательские списки статей/категорий
Кроме штатных
категорий,
Категории - один из механизмов классификации создаваемых страниц. Они помогают в поиске страниц связанных каким-то общим смыслом. Категории могут иметь подкатегории. Вложенность подкатегорий не ограничена.
Подробнее...
администратор может создавать произвольные выборки страниц, пополняемые автоматически. Это не совсем категории, так как они подразумевают динамическое добавление и удаление страниц по ряду параметров.
Эти списки создаются с помощью кода, размещённого в файле
init.php
init.php - необязательный файл в рамках структуры файлов Bitrix Framework. Он автоматически подключается в прологе.
Подробнее...
:
//Можно код разместить, например в файле /bitrix/php_interface/init.php
/*
* Функция, которая будет вызываться по событию при генерации списка категорий
* @param &obj $categories - объект, списка категорий
* @param str $sPathTemplate - путь для создания ссылки на категорию
* @return bool true.
*/
function _testOnCategoryListCreateEvent(&$categories, $sPathTemplate)
{
$catParams = new CWikiCategoryParams; // создаем объект - набор параметров категории
$catParams->sName = "Страницы созданные пользователем test"; // название категории
$catParams->sTitle = "Тайтл категории cтраницы созданные пользователем тест"; // всплывающая подскака
/*здесь вычисляем количество страниц попадающих в нашу категорию*/
$catParams->iItemsCount = 333; // к примеру их оказалось 333
$catParams->bIsRed = 'N'; // помечать ли категорию красным цветом, если не создана для нее страница
$catParams->createLinkFromTemplate($sPathTemplate); // создаем ссылку на категорию
$categories->addItem($catParams); // добавляем категорию в список категорий
return true;
}
//обрабатываем событие создания списка категорий
AddEventHandler("wiki", "OnCategoryListCreate", "_testOnCategoryListCreateEvent");
/*
* Функция, которая будет вызываться по событию при генерации списка страниц категории
* @param &obj $categoryName - Наименование категории
* @param str $iBlockId - id iblock-а, в котором хранятся страницы вики
* @return dbResult
*/
function _testOnCategoryPagesListCreateEvent($categoryName, $iBlockId)
{
// проверяем, наша ли категория создает список страниц
if($categoryName != "Category:Страницы измененные сегодня")
return false;
//Подготавливаем данные для выборки нужных нам страниц вики
$arPagesFilter = array(
'IBLOCK_ID' => $iBlockId,
'CHECK_PERMISSIONS' => 'N',
'ACTIVE' => 'Y',
'CREATED_USER_ID' => 478 // Показываем страницы созданные пользователем с id 478
);
$arSort = array('XML_ID' => 'ASC'); // Указываем сортировку
$arPagesFilter['INCLUDE_SUBSECTIONS'] = 'Y'; // Включаем подкатегории
// Учитываем, что вики может быть просто вики, а может быть для групп
if (CWikiSocnet::IsSocNet())
$arPagesFilter['SECTION_ID'] = CWikiSocnet::$iCatId;
else
$arPagesFilter['SECTION_ID'] = 0;
return CIBlockElement::GetList($arSort, $arPagesFilter, false, false, Array());
}
//обрабатываем событие создания списка страниц в категории
AddEventHandler("wiki", "OnCategoryPagesListCreate", "_testOnCategoryPagesListCreateEvent");
и Ваше мнение важно для нас