wangsisi 发表于 2010-12-22 14:34:24

MediaWiki自定义皮肤

mediawiki的默认皮肤有三种,标准,怀旧和科隆香水蓝,如果这三种你都不满意的话,你可以自行进行修改,修改成同主页以及blog同样的风格

在 mediawiki中修改皮肤不是一件容易的事情(比较麻烦,因为它的template还不能自定义,而且显示和功能两部分在源码中没有分开),需要修改stylesheets目录里的几个css文件和includes下的几个Skin*.php文件(以Skin起头的几个文件),请慎重。

对stylesheets下的css文件进行修改,如果你希望所有用户,包括没登录的用户都拥有类似blog风格的界面,那么,你需要修改wikistandard.css文件,将所需要的几个style拷贝过来,进行修改,使之符合wiki页面里的div的id设置(这样做是为了尽量少的去修改php文件);


[*]如果需要加上背景图,需要修改css文件,在body中加上background: url("imageURL");
[*]如果想要修改背景颜色,需要修改css文件,在body中加上background-color: "自己喜欢的颜色";
[*]如果想换logo图片,只需要将新的logo存成wiki.png,替换掉images/wiki.png即可;
[*]如果想修改页面的布局,则需要修改Skin.php中outputPage这个函数;
[*]如果想修改页头和页脚的文字位置,就要修改Skin.php中,td class='top'和td class='bottom'后的align属性,我将bottom中的align属性去掉了,改为由#footer来控制;
[*]如果希望给外部链接加上一个图标,需要修改css文件,加上一行#article a.external {background: url("/image/external.png") left no-repeat;padding-left: 13px; };
[*]如果希望给新建链接换成一个图标,需要修改Skin.php,在function makeBrokenLinkObj()函数中将$s = "{$prefix}{$text}{$inside}<a href="{$u}"{$style}>?</a>{$trail}";这一行改为$s = "{$prefix}{$text}{$inside}<a href="{$u}"{$style}><img src='imageURL' border='0'/></a>{$trail}";
注意,由于采用页面缓存机制,所有对Skin.php的修改都必须清空临时文件才能生效(修改css不用)。


mediawiki皮肤的安装及使用
mediawiki皮肤的安装十分简单,我们只需要把皮肤拷贝到相关的文件中就OK了,皮肤文件拷到哪里呢?下面就来说说说:

[*]MediaWiki下载下来的皮肤包中包含xxx.php、xxx.deps.php与一个xxx子目录这三部分早期的皮肤可能没有xxx.deps.php文件)
[*]然后把以上文件拷贝到mediawiki的/skins目录下即可
[*]文件拷贝后即可生效!调用方法为:登录,进入参数设置(Special:Preferences)页面,在皮肤中选择后保存即可。(注:非注册用户无法选择皮肤)
[*]如果希望皮肤能对所有用户都生效,那么可以在将其设为默认皮肤,之后匿名用户等都将默认使用这种风格。
方法:修改localsettings.php,在文尾“?>”之前增加如下一行:

[*]$wgDefaultSkin = 'xxx';
页: [1]
查看完整版本: MediaWiki自定义皮肤

BlueHost美国主机优惠码