如何将 css 和 js 文件添加到 mediawiki?

How to add css and js files to mediawiki?

我想在我的 wiki 上安装一个新的 javascript 脚本。

所以我必须调用以下脚本:

<link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Quicksand">
<link rel="stylesheet" type="text/css" href="library/pretty-json-master/css/pretty-json.css">
<script type="text/javascript" src="library/pretty-json-master/libs/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="library/pretty-json-master/libs/underscore-min.js"></script>
<script type="text/javascript" src="library/pretty-json-master/libs/backbone-min.js"></script>
<script type="text/javascript" src="library/pretty-json-master/pretty-json-debug.js"></script>

将此添加到我的所有页面的最佳做法是什么?

谢谢

可能还有其他方法,但您可以创建一个仅设置 $wgResourceModules 的轻型 MediaWiki 扩展。参见 Manual:$wgResourceModules

1/ 在 "extensions" 文件夹中创建一个新扩展 (extensions/jsonTree/)

2/ 在此文件夹中创建一个 php 文件 (jsonTree.php)

$wgHooks['BeforePageDisplay'][] = 'onBeforePageDisplay';

function onBeforePageDisplay( OutputPage &$out, Skin &$skin ) {

    $script = '
    <link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Quicksand">
    <link rel="stylesheet" type="text/css" href="/extensions/jsonTree/modules/css/pretty-json.css">
    <script type="text/javascript" src="/extensions/jsonTree/modules/libs/jquery-1.11.1.min.js"></script>
    <script type="text/javascript" src="/extensions/jsonTree/modules/libs/underscore-min.js"></script>
    <script type="text/javascript" src="/extensions/jsonTree/modules/libs/backbone-min.js"></script>
    <script type="text/javascript" src="/extensions/jsonTree/modules/pretty-json-debug.js"></script>
    ';

    $out->addHeadItem("jsonTree script", $script);

    return true;

}

3/ 将此文件包含在 LocalSettings.php

require_once( "$IP/extensions/jsonTree/jsonTree.php" );