Справка:Глобальный код

↱ wp:code
ВП:КОД

В сентябре 2017 года был произведен глобальный рефакторинг кода, что позволило сократить количество запросов и минимизировать код, благодаря использованию ResourceLoader и системы гаджетов. Общий код на протяжении года приводился к соответствию общим стайлгайдам MediaWiki. На этой странице описаны JavaScript и CSS страницы в пространстве MediaWiki нашего раздела.

MediaWiki автоматически подключает к каждой странице Common.js, Common.css и два соответствующих файла текущей темы оформления.

Стандарт оформления кода править

Так как Википедия является открытым проектом, в который вовлечено большое количество участников, рекомендуется при редактировании CSS и JS файлов пользоваться утвержденными стандартами MediaWiki: Manual:Coding conventions/CSS и Manual:Coding conventions/JS. В случаях, не описанных в данных документах, для CSS рекомендуется использовать стандарты Google.

Название Описание функциональности или поддерживаемый шаблон
collapsibleTables()
collapsibleDivs()
Википедия:Сворачивающиеся блоки

На заглавной странице:

  • добавляет ссылку «полный список» в конец списка интервик
    эта ссылка актуальна в связи с тем, что список интервик не полный;
  • прячет несколько ненужных элементов
    эти элементы второстепенны (они видны посетителям с отключённым JavaScript) и вынесены в этот файл для разгрузки глобальных CSS файлов;

В зависимости от текущей страницы Common.js вызывает другие файлы, описанные ниже. Эти файлы не являются стандартными для MediaWiki и были созданы администраторами проекта.

Gadget-common-action-edit.js править

Вызывается при редактировании, добавляет:

  • кнопки вставки общеупотребительных фраз под полем описания правки;
  • напоминание о необходимости подписаться на большинстве страниц обсуждения. Напоминание активно только для IP- и новых участников, остальные участники по желанию могут добавить себе в Шаблон:Editcommonjs код:
sigWarning = true;  // Напоминать про отсутствие подписи на большинстве страниц дискуссий

Gadget-common-special-upload.js править

Дополнительная функциональность на странице загрузки файла:

  • вставка шаблонов в поле описания,
  • предупреждения о лицензиях,
  • возможность Ajax-предпросмотра описания,
  • сворачивание блока быстрой вставки.

См. также MediaWiki:Uploadtext.

Gadget-common-special-search.js править

Выпадающий список внешнего поиска на странице поиска.

Group-sysop.js править

Вызывается из Common.js только для администраторов, функциональность описана на странице Обсуждение MediaWiki:Group-sysop.js.

страница размер
Vector.js 0
Monobook.js 6589
Modern.js 0

В зависимости от выбранной участником темы оформления, MediaWiki также автоматически выполняет .js файл темы оформления.

Эти страницы считаются устаревшими, и разработчики не рекомендуют их использовать.

Cодержит код для улучшения совместимости темы «Современная» с персональными скриптами, написанными для темы «MonoBook»

CSS код Описание
body.page-Заглавная_страница { /*...*/ }
спрятывание ненужных элементов на заглавной странице; некоторые другие (менее важные) элементы прячутся в Mainpage.js
#file img {
	background: url("//upload.wikimedia.org/wikipedia/commons/5/5d/Checker-16x16.png") repeat;
}
Фон   на странице описания изображения, полезен для наглядности изображений с прозрачностью.
.allpagesredirect,
span.redirect-in-category a {
	font-style: italic;
}
Выделение курсивом перенаправлений на страницах категорий, а также на AllPages и PrefixIndex
.standard,
.wide { /*...*/ }
См. Википедия:Оформление таблиц
table.ambox { /*...*/ }
Около 60 строк кода для оформления {{ambox}}
.infobox { /*...*/ }
.notice { /*...*/ }
.messagebox { /*...*/ }
Классы для стандартного офомления различных шаблонов-сообщений, в основном для страниц обсуждений
/* Style for horizontal lists (separator following item) */
.hlist dl,
.hlist ol,
.hlist ul { /*...*/ }
Набор классов для плоских списков (списки оборачиваются в <div class=hlist>...</div>)

страница размер
Vector.css 529
Monobook.css 1733
Modern.css 0

В зависимости от выбранного оформления движок подключает один из CSS файлов оформления. В этих файлах располагаются CSS правила, зависящие от выбранной темы оформления, как правило для «внешних» элементов интерфейса (находящихся вне области статьи).

В большинстве файлов используются следующие правила:

CSS код Описание
#siteSub { /*...*/ }
оформление подзаголовка «Материал из Викиновостей, свободного источника новостей», который в некоторых темах по умолчанию спрятан

Script/criteriaCheck.js править

См. Википедия:Глобальный код/Автоматическая проверка соответствия критериям.

Гаджеты править

У многих гаджетов есть страница описания, которую можно найти например со страницы Special:Gadgets.

Скрытые гаджеты править

Gadget-registerTool.js править

См. Проект:Технические работы/Разработчикам скриптов#Добавление кнопок на панели инструментов.

См.также править

Шаблон:CSS и JS файлы интерфейса MediaWiki