So far we've talked about making modifications to a vBulletin installation, and we've looked at four different ways to modify the installation. So far we've called the changes 'modifications', but the term that you are more likely to see used on the web is 'hacks'. Whenever a board is modified, it is said to be hacked (not to be confused with 'hacked' as in the security being compromised by a hacker), and modifications are known as hacks as in "hacks to a board". Basically, any change that alters the underlying code of the forum is looked upon as a hack. Changing the CSS and style settings through the interface is not generally thought of as a hack because these are expected and they don't change the underlying functionality of the board. However, making changes to the templates and the PHP code is definitely considered to be hacking the board. Making changes to the phrases that control the board is considered by many to be hacking too, though some just look at this as part of the customization process, similar to changing the stylesheet.
A hack can be one change or a hack can be many changes. So far we've looked at some very simple hacks, but in later articles we'll go much deeper. However, before we do that, let's look at the pros and cons of hacking a board.
Pros and Cons of Hacking a vBulletin Board
As with everything in life, there are pros and cons when it comes to hacking a vBulletin board. When you are considering a hack, you have to decide whether or not it is worth the potential downsides. There are a number of pros to carrying out hacks on your vBulletin installation.
Below are a few positive points to consider:
• Hacking the board can make your board unique and different from other installations, and enable you to personalize your discussion board.
• Hacking can add much-needed functionality.
Hacking can also remove unwanted functionality. There are, in fact, more cons to hacking than pros. However, you have to balance things out a hack that adds a spellchecker or allows you to display advertisements in the forum is quite a powerful pro point. Against these pros you balance out the cons.
Typical cons include:
- • Hacks can take time to install this can mean downtime for your members.
• Hacking the code can damage the forum and cause downtime if things go wrong.
• Support for hacked boards can be limited to reinstallation of the software.
• A hacked board is harder to upgrade than a board left in a standard state.
As a forum administrator, you must balance out these cons against the benefits. However, if you take care when carrying out a hack (by, for example, documenting your changes and ensuring you have a recent forum backup in case things go wrong), you should be fine.
Finding a Hack
So, where does the typical forum administrator find hacks? There are a few options:
• You can develop your own hacks. This is an option for the experienced administrator and for people who have been working with vBulletin for some time, but it is not recommended for a beginner with no experience of PHP and MySQL.
• You can download hacks. There are a number of forums and websites dedicated to vBulletin hacks. The most popular is http://www.vbulletin.org. A search here will generally yield a number of hacks.
• You can get a hack made. On many of the vBulletin forums (including http://www.vbulletin.org), you can ask for a hack to be made. This might not be cheap, and you might have to be specific about what you want, but this is another option open to vBulletin administrators.
Installing a Hack
Once you have found a hack, you have to install it. However, there's no one single way to install a hack. In fact, there is almost as many ways of installing a hack as there are hacks!
Generally a hack consists of code and installation instructions. Instructions are generally quite clear and straight forward following the following format:
1. Open file xyz.php.
2. At line xx add the following code: …
3. Save the file and upload.
4. Open up template yyy.
5. Find the following code: …
6. Add the following code: …
7. Save the template.
These instructions are usually detailed, but it is recommended that you work through the instructions before making any actual changes to the files this way, if there are any ambiguities in the instructions, you have a chance of spotting them first.
Be on the lookout for problems. If the instructions ask you to find some particular code or highlight a line of code that you cannot find, then first make sure that you are looking in the correct file. If you still cannot find the code, then there may be a problem somewhere. For example, you might have already made changes to that file, or perhaps a later version of vBulletin has removed the line referenced in the instructions. Either way, don't make guesses at where the code should go, as this could be disastrous. Check for an updated version of the hack, or get in touch with the author of the hack. (If you found the hack on a forum, this should be easy.) Installing a hack is easier if it contains an install script you just upload the files to the appropriate location on the server (usually specified in the instructions) and then run the install script, which will make all the changes for you. When done, you normally delete the installation file to prevent it being rerun by some other, unauthorized person.
Don't be lulled into a false sense of security by a hack that has an installation script things can nonetheless go wrong, so make sure that you have an up-to-date backup of the forum and of the database just in case things don't go according to plan.
After installation, test the hack thoroughly. Since each hack is different, it's impossible to offer detailed advice on how to do this, but if you've installed a spellchecker, then test that it works; if you've installed a hack that makes moderating easier, then test this. Work methodically, and be on the lookout for problems. Don't tolerate error messages if you see any, find out what the problem is. Don't ignore them they will only get worse!
Backing Up a Hack
There are two levels of backup for hacks.
1. First, if it's a hack you have installed on your forum, keep a copy of the hack and the installation instructions in case you ever need to install it again. It's always recommended that you check for an updated version of the hack if you have to reinstall it, but there are always a few that you end up not being able to find again.
2. Back up the whole forum using FTP, and keep a copy of the database. This way, you have a copy of the installed hack, and if anything goes wrong with your forum, it should take you only minutes or hours to recover from (depending on the size of your forum and database, and the speed of your Internet connection).
So far, I've just mentioned free hacks or hacks specially created for someone. There are also a number of commercial hacks available. Sometimes it may be disputed whether they are hacks at all, but if they integrate into a vBulletin installation and add features, then they are hacks, albeit generally bigger and packing much more functionality.
Another element to commercial hacks is support when you buy software, you normally get support, and this can be very useful indeed. You can generally get good support all the way from installation to troubleshooting.
There are a number of commercial hacks available for vBulletin far too many to list them all here. However, here are a few of the more popular ones:
• PhotoPost PHP Pro http://www.photopost.com photo gallery software