Возможно ли защитить определенную категорию, чтобы, например, категория «category1» не может быть отнесена к статье без определенного разрешения?Назначение категории защиты в MediaWiki
1
A
ответ
0
Это может быть немного сверху, за то, что вы хотите, но я думаю, вы можете использовать SimpleSecurity для этого, но это может также гарантировать, что люди без разрешения не могут вид категории либо.
0
Вряд ли, так как добавление категории так же просто, как добавление текста, это не действие, которое может быть ограничено установкой по умолчанию или расширением, которое я мог найти.
Я думаю, что можно было бы написать и расширять, что бы удалить текст, если у вас нет разрешения на добавление этой категории.
1
Я считаю, что вы могли проверить, была ли категория добавлена на страницу в крюке ArticleSave
и выдать сообщение об ошибке, если у пользователя нет необходимого разрешения.
Edit: Что-то вдоль этих линий (быстрый & загрязнен):
$wgForbiddenCats = array('Forbidden' => 'sysop');
$wgHooks['ArticleSave'][] = 'checkForbiddenCats';
function checkForbiddenCats($article, $user, $text, $summary, $minor,
$_, $_, $flags, $status)
{
global $wgForbiddenCats, $wgParser;
// Firstly, get categories in the new text
$parser_output = $wgParser->parse($text, $article->getTitle(),
$article->getParserOptions());
$new_cats = array_keys($parser_output->getCategories());
// For now, the only added categories are the ones in the submitted text
$added_cats = $new_cats;
// If the page already exists, it can have some categories already
if(!($flags & EDIT_NEW)) {
$dbr = wfGetDB(DB_SLAVE);
$query_result = $dbr->select(
'categorylinks',
'cl_to',
array('cl_from' => $article->getID()));
$old_cats = array();
while($row = $query_result->fetchRow())
$old_cats[] = $row[0];
$dbr->freeResult($query_result);
$added_cats = array_diff($new_cats, $old_cats);
}
$user_groups = $user->getGroups();
foreach($wgForbiddenCats as $category => $group) {
if(array_search($category, $added_cats) !== false &&
array_search($group, $user_groups) === false)
{
$status->fatal('forbidden-cat');
return false;
}
}
return true;
}
Смежные вопросы
- 1. Категории Mediawiki не содержат страниц
- 2. Не показывать «страницы в категории» в mediawiki
- 3. mediawiki: получение страниц в данной категории
- 4. Mediawiki значение выпадающее: из категории + никто
- 5. Можно скрыть пространство имен MediaWiki из категории?
- 6. Категории MediaWiki, которые не обновляются автоматически
- 7. Назначение строк в категории в Openrefine
- 8. Назначение сырых данных в ведро Категории Counts
- 9. Как показать все категории в MediaWiki Главная или другие страницы?
- 10. Обновление Mediawiki 1.26.2 - категории, перечисленные в одном столбце
- 11. API Mediawiki: получить изображение из статей в определенной категории
- 12. Как перечислить все категории в главной/домашней странице MediaWiki
- 13. Изменение названия страницы, как показано в категории MediaWiki
- 14. Переключить категорию в MediaWiki
- 15. Назначение категории товару через has_many: через
- 16. Mediawiki Ответ JSON: получение миниатюр каждого члена категории
- 17. Mediawiki-PHP: проверьте, принадлежит ли статья к категории
- 18. Категории MediaWiki по отношению к подстраницам для организации контента
- 19. MediaWiki API. Как получить максимальное количество страниц внутри категории?
- 20. Проходящие свойства в Semantic MediaWiki
- 21. semantic mediawiki расчет стоимости
- 22. В поисках подкатегории категории википедии, используя категории и categorylinks таблицу
- 23. API MediaWiki: получить дерево категорий
- 24. MediaWiki API isCategory
- 25. Libreoffice SDK, Calc Расширение расширения Java: назначение функции новой категории
- 26. Подкатегория категории в категории
- 27. Более эффективное назначение элементов массива numpy на основе категории
- 28. PHP/MySQL Назначение категории по категориям с наименьшим количеством ответов
- 29. Получить список категорий текущей страницы в MediaWiki
- 30. Невозможно защитить переведенную страницу в MediaWiki
SimpleSecurity позволит вам сделать это так, только некоторые люди могут редактировать определенные категории, но я не думаю, что это то, что они хотеть сделать. –
Благодарим вас за ответ. Но я хочу ограничить добавление определенной категории к статье. – dragoon