This is a follow-up to the last MediaWiki article I wrote. Check out “Setting Up Your Local MediaWiki Environment” to set up the MediaWiki on your Windows machine.
Now that you have a copy of the MediaWiki running on your machine, it’s time to create an environment so that you can start manipulating your wiki to suit your needs.
Before I go any further, I want to make it perfectly clear that I do not suggest that you make any changes to the core of the MediaWiki. Unless what you’re doing is going to be incorporated into the main code for the MediaWiki, stay away. The people who do work on the main code do an amazing job and each release comes out with great new features and improvements. You want to make sure that you can reap the rewards of all their hard work. Make sure that you are able to upgrade your wiki to the latest version when the new MediaWiki comes out. If you do change the core code, upgrading will mean losing or reintegrating any changes you make.
So, if you’re not going to work on the MediaWiki itself, what are you going to work on? There are two main areas that are perfect for making your wiki site stand out: Skins and Extensions. You can work on both of these to make your site unique without doing any damage to the MediaWiki itself.
What’s a skin? A skin for a wiki is a lot like a skin of a human. It is the out outer shell that makes your wiki look nice. The skin that MediaWiki comes with, Monobook, is OK, but there’s so much more that you can do to make your wiki unique.
What are extensions? The developers for MediaWiki are really smart. They’ve created a way to extend the abilities of the MediaWiki without needing to modify the core code. Extension are little snippets of code that you can plug in to extend what the MediaWiki can do. A couple of examples of extensions that I use are anti-spam and youtube. Both of these extensions were created by other people, but were shared on the MediaWiki site. Extensions are very easy to install, and can add a lot to your site.
Now for your development environment. My personal preference for an integrated development environment (IDE) is Eclipse for PHP by Zend. It integrates nicely with source control and it’s completely free. To modify CSS and PHP files, you can use a regular text editor, like Notepad, but an IDE is just much nicer to work with.
On to source control. I am working on The Pet Wiki by myself, but I still use source control. Why? Because I want to get back to stable revisions of the code that I’ve created. Source control helps you compare different revisions and helps find where bugs may have slipped in along the way. I use Subversion, which I downloaded from Collabnet. Subversion is very easy to use. After it is installed, you can control checking in and out files in Windows Explorer. All the tools are in your right-click menu. Subversion also plays nicely with Eclipse.
Have any problems setting up Eclipse or Subversion? Give a holler. I’ll be happy to help you through it.