Вікіпедія:Персональні скрипти
Додаткові сторінки |
Персональний скрипт — це Javascript код, який зареєстровані користувачі можуть собі налаштувати для автоматичного виконання на всіх сторінках Вікіпедії. Зазвичай скрипти використовуються для спрощення навігації та редагування.
Зміст
Як додати собі скрипт[ред. код]
Додати собі скрипт можна двома шляхами:
- копіюванням собі на підсторінку common.js власне вихідного коду.
- якщо скрипт існує як окрема сторінка, то можна вставити на нього «посилання»
importScript('Користувач:Автор скрипта/назва скрипта.js'); // Для скрипта на українській вікіпедії
importScript('User:Author/Name.js','en'); // Для скрипта на вікіпедії англійською
Основна перевага другого способу — ваш common.js буде меншим, і в ньому зручніше орієнтуватися. Крім того, у вас завжди буде найсвіжіша версія скрипту з можливими доповненнями і виправленнями, внесеними автором (якщо ви не хочете змін, додайте суфікс &oldid=nnn
).
Рекомендуємо звернути увагу на велику колекцію скриптів в англійській Wikipedia. На сторінках цього проекту користувачі можуть розміщувати як написані ними скрипти, так і копіювати найбільш корисні або цікаві скрипти з братніх проектів, забезпечуючи їх докладними описами.
Як написати скрипт[ред. код]
Вам потрібно мати знання мови JavaScript, і бажано також jQuery.
Щоб код скрипта починав виконуватись лише після того як завантажиться сторінка, його потрібно помістити всередину такої функції:
$(document).ready(function () {
Код модуля;
});
Loader[ред. код]
Іноді треба завантажити якісь додаткові бібліотеки на льоту, і виконати код лише коли бібліотека завантажиться. В такому разі ми використовуємо наступну функцію:
mw.loader.using(['mediawiki.util'], // список потрібних модулів
function () {
//виконати код тут коли всі бібліотеки завантажаться.
});
Перший параметр - список бібліотек до завантаження, другий - функція що виконається після їх завантаження, необов’язковий третій - функція що виконається в разі помилки під час завантаження.
Додати посилання на панель інструментів[ред. код]
var good = mw.util.addPortletLink('p-tb', '#', 'Вчинити добро', 'ca-good', 'Кнопка що робить добре');
$(good).click(function (event) {
event.preventDefault();
alert('Все добре!');
});
Додавання кнопок на панель інструментів редактора[ред. код]
https://www.mediawiki.org/wiki/Extension:WikiEditor/Toolbar_customization#Default_sections
Текст вікна редагування[ред. код]
Можна отримувати та змінювати через змінну document.editform.wpTextbox1.value
.
var add_page_template = function() {
document.editform.wpTextbox1.value = "''' ''' - \n\n" +
"== Див. також ==\n" +
"* [[]]\n\n" +
"== Посилання ==\n" +
"* {{en|}}\n" +
"* []\n\n" +
"[[Категорія:]]\n";
}
API вікіпедії[ред. код]
Сторінки[ред. код]
- Отримати ім’я:
mw.config.get('wgPageName')
Користувач[ред. код]
- Отримати ім’я:
mw.config.get('wgUserName')