wangsisi 发表于 2011-6-22 15:24:14

修改MediaWiki的PHP程序

由于MediaWiki这样的开放源代码系统所有程序都是公开的、免费的,所以很多人会讨论,如何使其为广大用户提供方便,甚至尝试修改其PHP程序
基本设置
LocalSettings.php
这是必须进行修改的文件,网站的基本设置(例如网站名称、数据库连接、语言编码、是否允许上传等)都在里面,还可以加入更多的设置(例如用户权限、缓存机制、上传允许文件类型、调用扩展等),因为我们有多个Wiki网站,所以还统一调用了一个CommonSettings.php子程序。

MonoBook.php
这个也算是基本需要修改的文件,是默认的皮肤文件,我们在里面添加了调用Google API、Google AdManager、Google Analytics的代码。

Common.js, Common.css, Monobook.js, Monobook.css
这些有点特殊,不是在服务器的目录下找文件来修改,而是存放在数据库中,通过这些页面进行修改:MediaWiki:Common.js, MediaWiki:Common.css, MediaWiki:Monobook.js, MediaWiki:Monobook.css,用于界面和部分扩展。

includes修改
Linker.php
MediaWiki 1.10.0 中要想让外部链接和站间链接在浏览器中打开新页面,就只有修改/includes/Linker.php这个文件,而MediaWiki 1.15.0 中可以有其它设置办法。

ImagePage.php
想对Image页面的界面进行一些修改的话,可以找到/includes/ImagePage.php进行。

HTMLFileCache.php
网站语言设置为zh的默认情况下,zh-tw等都是不生产File Cache的,可以通过修改/includes/HTMLFileCache.php中的语言判断来让系统照样生成File Cache,另外就是这次上面说的临时让浏览者访问老文件缓存而不马上进行更新。

maintenance修改
runJobs.php
/maintenance/runJobs.php默认一次只能运行最多10000个Jobs,如果网站数据量大,需要修改这个值。

generateSitemap.php
/maintenance/generateSitemap.php可以修改其中的网站URL,以便生成Sitemap后不需要进行修改,好像也可以通过在LocalSettings.php中设置而不需修改这个文件。

rebuildFileCache.php
/maintenance/rebuildFileCache.php可以修改其中的网站URL,以便生成File Cache中是正确的网址,好像也可以通过在LocalSettings.php中设置而不需修改这个文件。
扩展修改
有的时候还需要对扩展程序也进行类似的小修改,一般可以归于扩展程序的安装中。

以上这些东西能少修改的就尽量少修改,一旦MediaWiki版本升级后,要记得都要进行检查、更新。不过如果有PHP程序员的话,就可以对MediaWiki进行大手术,在基本构架不变的情况下改得面目全非、功能上更贴近需要,例如国外的Mahalo、WikiHow等网站,除了改动程序以外,还可以做出专门的扩展程序。

页: [1]
查看完整版本: 修改MediaWiki的PHP程序

美国主机评测网站