База данных проекта, основанного на движке wiki, мгновенно разрастается до абсолютно несуразных размеров. По непонятным причинам (видимо, какие-то соображения внутренней политики) у самой wikimedia нет штатных механизмов для удаления старых версий (ревизий) статей.
Но есть замечательный плагин под названием “SpecialDeleteOldRevisions”, который эту функциональность обеспечивает. С его помощью можно удалить статьи, фильтруя по

  • Категории статьи
  • Дате создания ревизии
  • Названию статьи
При этом можно удалять архивные (удалённые) статьи, а можно нет. Проверил на своей вики – всё работает прекрасно. Но, как всегда, после некоторой работы напильником. Я её осуществил и выложил пропатченный плагин у себя.

Оригинальная страница плагина

Моя пропатченная версия для вики 13.2

Для того, чтобы установить плагин, скопируйте его директорию “SpecialDeleteOldRevisions” в “/extensions”, после чего добавьте в файл LocalSettings.php строчки

 $wgGroupPermissions['sysop']['DeleteOldRevisions'] = true;
 include_once('extensions/SpecialDeleteOldRevisions/SpecialDeleteOldRevisions.php');

После этого в списке служебных страниц появится страница “Delete old revisions” – вперёд и без испуга. Хотя лучше сначала всё-таки сделать бэкап базы ;).


Data base of wikimedia-based project in several monthes can gain awful size. Since there are no solutions from wikimedia itself, but you can use wonderful plugin “SpecialDeleteOldRevisions”, который эту функциональность обеспечивает. It helps you to delete articles, filtering by

  • Article Category
  • Revision creation time
  • Article name
Also you have an option – if you want to delete deleted articles from database or not. I checked it on my wiki – everything works wonderful. But, as always, after some bugfix. I made this work and published fixed version.

Original plugin page

My patched version for wiki 13.2

To install plugin, copy it’s directory “SpecialDeleteOldRevisions” to your “/extensions”, and add to LocalSettings.php the following lines:

 $wgGroupPermissions['sysop']['DeleteOldRevisions'] = true;
 include_once('extensions/SpecialDeleteOldRevisions/SpecialDeleteOldRevisions.php');

After it in “special pages” you will see new link – “Delete old revisions” – use it. And better make backup firstly ;).