Почему MediaWiki?
- Потому что его разрабатывает и использует WikiMedia (разработчики WikiPedia);
- Базы данных MySQL, PostgreSQL, SQLite;
- Поддерживает memcached и Squid;YAML, HTML и TeX;
- Оптимизированна под поисковики, есть расширения и темы, полная русская локализация.
Установка
- Нам понадобиться PHP5 и выше (плюс PCRE и SPL), СУБД MySQL или PostgreSQL.
- Скачиваем архив с Mediawiki и распаковываем в директорию где будет у нас находится вики-раздел сайта;
- Переходим по пункту “set up the wiki”;
- Заполняем анкетные и конфигурационные данные (Название, язык, бд, кеш, администратор и т.д.);
- Все, готово!
Настройка
Перемещаем файл LocalSettings.php (<mediawiki>/config/LocalSettings.php) в корень вики-раздела (<mediawiki>/);
В LocalSettings.php находятся основные настройки вики-движка, например директива $wgUseAjax (true/false) отвечает за AJAX, то есть если true то будет вики-движком использоваться AJAX (по возможности конечно).
Добавьте в LocalSettings.php:
# Включаем поддержку AJAX $wgUseAjax = true; # Логотип $wgLogo = '/images/your-logotype.gif'; # Запрет незарегистрированным участникам редактировать статьи $wgEmailConfirmToEdit = true;
Расширения
Расширения находятся
Устанавливать расширения очень просто, надо распаковать архив в каталог <mediawiki>/extensions.
И напоследок, 3 полезных расширения…
Предназначена для вывода “дерева категорий” в раздел “Спецстраницы/Списки страниц/Дерево категорий” и в сайдбар.
Добавьте в LocalSettings.php:
# CategoryTree - дерево категорий require_once("{$IP}/extensions/CategoryTree/CategoryTree.php"); # Максимум потомков (ветвей в ноде) $wgCategoryTreeMaxChildren = 1000; # AJAX использовать? $wgCategoryTreeDynamicTag = true; # Корневая категория, вместо "Root" - свою категорию. $wgCategoryTreeSidebarRoot = 'Root'; # Режим для AJAX $wgCategoryTreeSidebarOptions['mode'] = 10;
Для перемещения меню категорий в сайдбаре, я изменил шаблон MonoBook (именно он используеться по умолчанию):
Файл <mediawiki>/skins/MonoBook.php строка 177
после
if ( !isset( $sidebar['LANGUAGES'] ) ) $sidebar['LANGUAGES'] = true;
и до
foreach ($sidebar as $boxName => $cont) {
вставить:
$sidebar = array( 'categorytree-portlet'=>$sidebar['categorytree-portlet'], 'SEARCH'=>$sidebar['SEARCH'], 'navigation'=>$sidebar['navigation'], 'TOOLBOX'=>$sidebar['TOOLBOX'], 'LANGUAGES'=>$sidebar['LANGUAGES']);
то есть, мы просто поменяли местами порядок следования меню.
Тут их даже две версии:
Я использовал вторую, типа официальная всетаки! Добавьте в LocalSettings.php:
# FCKeditor require_once( "{$IP}/extensions/FCKeditor/FCKeditor.php" );
Я пробовал еще TinyMCE расширение, однако оно сильно нестабильно (Release status: unstable), пользоваться невозможно 🙁
Еще есть дополнительные опции:
# Ссылки на переключение с рич-редактора на стандартный $wgDefaultUserOptions['riched_use_toggle'] = 1; # По умолчанию отключен рич-редактор $wgDefaultUserOptions['riched_start_disabled'] = 1; # Появиться ссылка для возможности открытия в новом окне рич-редактор $wgDefaultUserOptions['riched_use_popup'] = 1; # Помнить ваш выбор (рич/стандарт) $wgDefaultUserOptions['riched_toggle_remember_state'] = 1;
В данном случае “рич-редактор” - это FCKeditor.
MindMap
Еще есть
Диаграмма связей, известная также как интеллект-карта, (англ. Mind map) — способ изображения процесса общего системного мышления с помощью схем. Также может рассматриваться как удобная техника альтернативной записи.
Установка и настройка Mediawiki + 3 расширения, опубликовано waksoft, лицензия — Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International.