打开主菜单
首页
随机
最近更改
特殊页面
沙盒
互助客栈
方针与指引
帮助
页面信息
链入页面
相关更改
设置
关于LLWiki
免责声明
LLWiki
搜索
用户菜单
18.189.193.210
讨论
监视列表
贡献
登录
LLWiki正在建设中,欢迎
加入我们
!
查看“LLWiki:管理员技术手册”的源代码
←
LLWiki:管理员技术手册
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:
用户
您没有权限编辑
LLWiki
命名空间内的页面。
该页面已被保护以防止编辑和其他操作。您可以点击右侧按钮在讨论页提出编辑请求,让管理人员或其他有经验的用户代为编辑:
提出编辑请求
您可以查看和复制此页面的源代码。
{{内容缺失}}{{目录折叠}} ==全站CSS== ===优先加载的CSS=== ===滞后加载的CSS=== ===CSS小工具分类=== ==Widget(小部件)== ===小部件页面格式=== ===小部件分类=== ===小部件JS的特殊之处=== ==Gadget(小工具)和全站JS== ===ResourceLoader和JS模块=== ===不作为模块的JS脚本=== ===小工具定义=== ===小工具简介=== ===小工具分类=== ===MediaWiki核心模块介绍=== 本章节介绍LLWiki使用或曾经使用的MediaWiki核心模块,更完整的列表参见[[mw:ResourceLoader/Core_modules/zh|MediaWiki]]和[https://doc.wikimedia.org/mediawiki-core/master/js/ JSDuck]。 ====mediawiki==== mediawiki是任何页面都会预加载的两个环境模块之一,包含不少功能<ref name="core-modules">[[mw:ResourceLoader/Core_modules/zh|MW:ResourceLoader/核心模块]]</ref>。这里只介绍LLWiki常使用的一些属性和方法。 ;mw.config :这个属性提供了大量重要的站点、页面和用户信息<ref>[[mw:Manual:Interface/JavaScript/zh#mw.config|完整列表]]</ref>,一般常用mw.config.get()方法获取对应的变量值。下表整理了LLWiki常用的一些变量: {| class="wikitable" ! 变量名 !! 说明 !! 手机版可用性 |- | skin || 皮肤 || 桌面版为“vector”,手机版为“minerva”,这也是区分桌面版和手机版的主要依据 |- | wgFormattedNamespaces || 储存了所有名字空间本地化译名的数组,不过目前除了“模块”都是英文 || 可用 |- | wgNamespaceIds |- | wgScript || <code>/mediawiki/index.php</code>,在LLWiki也可简化为<code>/zh</code>,主要用于不同MediaWiki站点间的代码通用,非必需 || 可用 |- | wgAction || index.php的action参数<ref>[[mw:Manual:Parameters_to_index.php/zh|完整参数列表]]</ref> || 相比于桌面版,手机版由于添加了[[Special:历史]]而少了“history”这个变量值 |- | wgArticleId || 用于判断是否是内容页面且页面是否已建立 || 需要注意查看[[special:历史|历史]]和[[special:移动版差异|差异]]时值为0 |- | wgCanonicalSpecialPageName || 标准化的特殊页面名,也可被wgPageName取代,主要用于不同MediaWiki站点间的代码通用,非必需 || 可用,而且多了“History”和"MobileDiff"等可能的取值<ref>[[mw:Extension:MobileFrontend/zh|移动前端的扩展说明]]</ref> |- | wgCategories || 页面所属分类,且总是包含隐藏分类,但在action=edit/history/info等时为空。繁简规则一般遵从实际分类页面,但似乎偶有例外 || 在[[special:移动版差异|差异]]页面同样不可用。另外桌面版的空值为<code lang="js">[]</code>,手机版的空值为<code lang="js">null</code>,注意可能的bug |- | wgCurRevisionId || 页面最新的revision ID || 在[[special:历史|历史]]和[[special:移动版差异|差异]]页面不可用 |- | wgIsArticle || 是否是内容页面(包含由某个页面的Wikitext源代码解析生成的HTML,可能是历史页面) || 由于[[special:移动版差异|差异]]页面不同时显示历史页面,此时不可用 |- | wgIsRedirect |- | wgIsProbablyEditable || 是否可能可以编辑 || 在[[special:历史|历史]]和[[special:移动版差异|差异]]页面不可用 |- | wgNamespaceNumber || 名字空间编号 || 可用 |- | wgPageContentModel || 页面内容模型,特殊页面为“wikitext” || 由于[[special:历史|历史]]和[[special:移动版差异|差异]]是特殊页面,会错误地显示为“wikitext” |- | wgPageName || 页面名称,空格显示为下划线 || 在[[special:历史|历史]]和[[special:移动版差异|差异]]页面不可用 |- | wgRedirectFrom || 跳转自重定向时为对应的重定向页 || 可用 |- | '''wgRelevantPageName''' || 关联的内容页面 || 可以用于[[special:历史|历史]]和[[special:移动版差异|差异]]页面,此时效果与桌面版一致 |- | wgRelevantArticleId |- | wgRelevantUserName || 关联的用户名 || [[special:用户贡献|贡献]]页面不可用 |- | '''wgRelevantPageIsProbablyEditable''' || 关联的内容页面是否可能可以编辑 || 可以用于[[special:历史|历史]]和[[special:移动版差异|差异]]页面,此时效果与桌面版一致 |- | wgRestrictionEdit |- | wgRestrictionMove |- | wgRevisionId |- | wgTitle |- | wgUserEditCount |- | wgUserGroups |- | wgUserLanguage |- | wgUserName |- | wgUserRegistration |- | wgUserVariant |- | wgDiffOldId |- | wgDiffNewId |} ;mw.hook() ;mw.loader ;mw.notify() :调用这个方法可以在桌面版的右上角、手机版的上方显示一个[[mw:Bubble_notifications/zh|泡泡通知]]。LLWiki一般使用这个方法取代window.alert()或OO.ui.alert()。 :方法<code>mw.notify(message, options)</code>接受两个参数。第一个必需参数<code>message</code>指定通知内容,可以是字符串、HTML元素对象或元素对象数组、jQuery对象或mw.message对象;第二个可选参数<code>options</code>则指定自定义选项,是一个JS对象。 :<code>options</code>中可自定义的选项有: :*<code>autoHide</code>:布尔值,决定通知是否会自行消失。默认为<code lang="js">true</code>。 :*<code>autoHideSeconds</code>:如果启用了<code>autoHide</code>(如默认情形),则指定通知自行消失的时间。默认为<code lang="js">'short'</code>(5秒),可以指定为<code lang="js">'long'</code>(30秒)。 :*<code>tag</code>:字符串,指定通知的标签,类似于HTML的ID。如果发送多个拥有同一个tag的通知,会导致之前的通知被后来的在原位覆盖。 :*<code>title</code>:标题。如果指定,则会于内容上方加粗显示。 :*<code>type</code>:字符串,指定通知的种类。除默认效果外其他可选类型为<code lang="js">'success'</code>、<code lang="js">'warn'</code>和<code lang="js">'error'</code>。 ;mw.now() :这个方法理论上和Date.now()差不多,但实际测试表明和Date.now()的取值不同,因此请勿混合使用。非必需,基本可以完全被Date.now()替换。 ====jquery==== ====mediawiki.api==== ====mediawiki.util==== ====mediawiki.Uri==== ====mediawiki.storage==== ====mediawiki.cookie==== ====user.options==== ====jquery.makeCollapsible==== ====jquery.tablesorter==== ====jquery.textSelection==== ====jquery.client==== ====jquery.color==== ====jquery.ui==== ====jquery.tipsy==== ====jquery.chosen==== ====oojs-ui-core==== ====oojs-ui-windows==== ====mediawiki.widgets==== ===LLWiki添加的全局變量和方法=== ;window.wgULS()和window.wgUCS()<ref name="site-lib">需要加載[[mediawiki:gadget-site-lib.js|site-lib.js]]</ref> ;mw.gadgets ;mw.request ;mw.widget ;mw.windowManager ;mw.standardQuery()<ref name="site-lib" /> ;mw.apiFailure()<ref name="site-lib" /> ;mw.safeEdit()<ref name="site-lib" /> ;mw.resizeLyrics()<ref>需要加載[[Widget:Lyrics]]</ref> ===ESLint=== CodeEditor使用ESLint标注可能存在的语法问题。LLWiki并未在后台预先规定太多规则,目前比较常用的仅是在<code lang="js>"use strict";</code>的基础上添加<code lang="js">/*global mw, $, OO, wgULS*/</code>或类似语句注明全局变量。特别要注意ESLint并不会对大多数JS模块不允许使用的ES6语法(async/await语法是已知的唯一例外)作出警告(详见[[#ResourceLoader和JS模块]]),因此请勿过度依赖这一功能来进行除错。 ===注意事项=== ==手机版== ===手机版解析器=== ====图片懒加载==== ===手机版CSS=== 手机版LLWiki使用Minerva Neue皮肤,与桌面版的Vector皮肤相比,不仅界面有很大差异,众多基础HTML元素也都添加了不同的CSS样式。为了适配窄屏设备,Minerva皮肤还添加了大量基于<code lang="css">@media</code>的规则,一般以设备宽度720px为分界使用不同的样式。以下着重介绍<code><table></code>和<code><img></code>这两种需要CSS修正的重灾区。 手机版CSS很多时候依赖外层容器的<code>content</code>类来生效,与此同时<code lang="css">#mw-content-text .mw-parser-output</code>的外层结构也同样有效,设计各种基于API的快速编辑工具(如Wikiplus等)的预览界面时需要考虑。 ====表格==== 对于<code><table></code>元素及其子节点,手机版已知会自动添加以下样式: <pre lang="css"> table, caption, tbody, tfoot, thead, tr, th, td { font-size: 100%; } table { border-collapse: collapse; } .content table { margin: 1em 0; overflow: auto; overflow-y: hidden; overflow-x: auto; } @media only screen and (max-width: 720px) { .content table { display: block; width: 100% !important; } } </pre> 这里重点说明一下第二和第四条规则造成的影响。第二条规则使得表格的外层边框、行边框和单元格边框合并,可能造成一系列关于边框的CSS规则出现不符合预期的表现,尤其是<code><table></code>的<code>cellspacing</code>属性会无法生效。因此一般建议避免使用<code>cellspacing</code>这一HTML属性,改为使用CSS中的<code>border-spacing</code>。另外,在需要<code>border-spacing</code>或<code>border-radius</code>等样式时,请同时指定<code lang="css">border-collapse: separate;</code>以使手机版生效。 第四条规则的本意是在窄屏上<code><table></code>元素不会将页面撑得过宽,但这同时会造成外层的<code><table></code>和内层的<code><tbody></code>分离。特别是如果外层<code><table></code>规定了边框或背景色时,很容易看出样式的错误。为此一般需要主动指定<code lang="css">display: table;</code>以修复这一问题,LLWiki有很多预定义的表格CSS类也都添加了这一规则<ref name="site-styles">[[mediawiki:gadget-site-styles.css|全站CSS]]</ref>。但这样修改的话又会重新面临过宽的表格将整个页面撑大的问题。LLWiki现定义了<code>table-wrapper</code>类<ref name="site-styles" />,用于套在宽表格外:<code lang="html"><nowiki><div class="table-wrapper"></nowiki></code>,这个外层容器会在窄屏上通过<code lang="css">overflow-x: auto;</code>限制里面的表格宽度。 ====图片==== ====皮肤界面==== ====其他==== ===手机版JS=== ====手机版JS模块==== ==繁简转换== ===Wikitext繁简转换=== ====转换表==== ====[[Template:NoteTA]]==== ====基本手工转换语法==== ===系统消息=== ===CSS繁简转换=== ===JS繁简转换=== ==滥用过滤器== ==测试账户== 如果管理员需要一个没有[[project:自动确认用户|自确]]权限的测试账户用于滥用过滤器测试、小工具测试等,可以临时启用[[special:abusefilter/6|6号滥用过滤器]]来移除某个测试账户的自确权限。这个滥用过滤器的使用语法非常简单,请根据样例修改为对应的用户名即可,这里不再赘述。 ==参考资料== [[Category:LLWiki指引]]
本页使用的模板:
Template:Ac
(
查看源代码
)
Template:ArticleCategory
(
查看源代码
)(受保护)
Template:Color
(
查看源代码
)(受保护)
Template:Info
(
查看源代码
)
Template:Membermapping
(
查看源代码
)(受保护)
Template:Membermapping/core
(
查看源代码
)
Template:Nico/color
(
查看源代码
)(受保护)
Template:Plainlinks
(
查看源代码
)
Template:內容缺失
(
查看源代码
)
Template:目錄摺疊
(
查看源代码
)(受保护)
返回
LLWiki:管理员技术手册
。