Подтвердить что ты не робот

Как создать свою собственную группу в mediawiki?

Я внимательно читал документацию mediawiki, но мне не удалось выяснить, как создавать новые группы.

Когда я смотрю на Special: Userrights, я вижу только 3 группы: Боты, Sysops, Bureaycrats

Я хотел бы создать свои собственные пользовательские группы, поэтому я могу использовать некоторые расширения, такие как http://www.mediawiki.org/wiki/Extension:Group_Based_Access_Control.

Может ли кто-нибудь сказать мне, как это делается, или указать мне какую-нибудь документацию?

4b9b3361

Ответ 1

Вы можете добавить разрешения для новых групп в файл LocalSettings.php, и они автоматически появятся на странице Special: UserRights.

Например, я хотел запретить редактирование обычными пользователями, но создать группу "Доверенные", которая была разрешена для редактирования. Следующий код создает группу "Доверенные", которая равна группе "пользователь", за исключением того, что пользователи "Trusted" могут редактировать, но "пользовательские" пользователи не могут.

$wgGroupPermissions['Trusted'] = $wgGroupPermissions['user'];
$wgGroupPermissions['user'   ]['edit']          = false;
$wgGroupPermissions['Trusted']['edit']          = true;
$wgGroupPermissions['sysop'  ]['edit']          = true;

На странице Special: UserRights теперь я могу проверить флажок "Надежный", чтобы доверять пользователям.

Ответ 2

Вы можете изменить внешний вид имени группы, создав следующие сообщения: (Для группы с именем ninja:)

  • MediaWiki: Group-ninja (content: Ninjas)
  • MediaWiki: Group-ninja-member (content: ninja)
  • MediaWiki: Grouppage-ниндзя (контент: проект: ниндзя)

Это гарантирует, что группа будет называться "ниндзя" во всем интерфейсе, а член будет называться "ниндзя", а в обзорах будет ссылка groupname на Project: Ninjas.

(источник: http://www.mediawiki.org/wiki/Manual:User_rights#Examples)

Ответ 4

Я верю, что нашел ответ, мне просто нужно добавить UserGroup и разрешение на массив wgGroupPermissions в файле LocalSettings.php.

$wgGroupPermissions['TomatoUsers']['read']  = true;
$wgGroupPermissions['TomatoUsers']['edit']  = false;

Ответ 5

У меня нет репутации, чтобы проголосовать за первый ответ (который также может быть добавлен в файлы инициализации расширения), но если вы добавите пользователей в свои группы, вы можете захотеть непосредственно редактировать базу данных (т.е. если вам нужно синхронизировать группы вики с внешней информацией). Если вы открываете базу данных "wikidb", таблица "PREFIX_user_groups" * содержит сопоставление между идентификаторами пользователя (ug_user) и именами групп (ug_group). Эта таблица в сочетании с информацией имени таблицы "PREFIX_user" * (имя_пользователя) и идентификационной информацией (user_id) предоставляет вам всю информацию для добавления и удаления большого количества пользователей из групп.

* Замените "PREFIX" префиксом базы данных, который вы использовали для своей вики.