User:Kurgenera/unref.js
外观
注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google Chrome、Firefox、Microsoft Edge及Safari:按住⇧ Shift键并单击工具栏的“刷新”按钮。参阅Help:绕过浏览器缓存以获取更多帮助。
// 小型维护模板添加器框架
$(function() {
// 确保页面已加载 MediaWiki API 库
if (!window.mw || !mw.loader.getState('mediawiki.api')) {
return;
}
// 1. 配置:请修改以下两行
var TEMPLATE_TO_ADD = '{{Unreferenced}}'; // <-- 修改成你要添加的模板,例如 {{Unreferenced}} 或 {{Cleanup}}
var EDIT_SUMMARY = '使用简易脚本添加 ' + TEMPLATE_TO_ADD + ' 维护模板';
// 2. 限制:确保只在文章命名空间运行 (Namespace ID 0)
if (mw.config.get('wgNamespaceNumber') !== 0) {
return;
}
// 3. 创建界面按钮 (将按钮添加到“动作”菜单栏)
mw.util.addPortletLink(
'p-cactions', // 目标菜单栏ID
'#', // 链接目标
'添加 ' + TEMPLATE_TO_ADD.replace(/\{\{|\}\}/g, ''), // 链接文本,例如“添加 Unreferenced”
'ca-quick-maint', // 链接ID
'快速将维护模板添加到条目顶部',
null, // 访问键
'#ca-viewsource' // 插入到“查看源代码”之前
);
// 4. 绑定点击事件和 API 调用
$('#ca-quick-maint a').on('click', function(e) {
e.preventDefault();
if (!confirm('确定要将 ' + TEMPLATE_TO_ADD + ' 模板添加到当前条目顶部吗?')) {
return;
}
// 使用 MediaWiki API 提交编辑
new mw.Api().postWithToken('csrf', {
action: 'edit',
title: mw.config.get('wgPageName'),
prependtext: TEMPLATE_TO_ADD + '\n', // 将模板添加到当前内容的开头
summary: EDIT_SUMMARY,
nocreate: true // 确保只编辑现有页面
}).then(function() {
alert('维护模板添加成功!页面即将刷新。');
window.location.reload(); // 刷新页面查看结果
}, function(error) {
alert('编辑失败,请检查控制台获取更多信息: ' + error);
});
});
});