- •Table of Contents
- •Preface
- •What This Book Covers
- •Conventions
- •Reader Feedback
- •Customer Support
- •Downloading the Example Code for the Book
- •Errata
- •Questions
- •What is vBulletin?
- •Why Have a Discussion Board?
- •Benefits of a Discussion Board
- •Why vBulletin?
- •History
- •Development
- •The vBulletin Advantage
- •Versatile
- •Performance
- •Customizable
- •Easy to Maintain
- •Other Features
- •vBulletin Licensing Options
- •Leased License
- •Owned License
- •Choosing a License
- •Example vBulletin Sites
- •Summary
- •Requirements
- •Disk Space
- •Bandwidth
- •System Resources
- •Shared Hosting
- •Semi-Dedicated Hosting
- •Dedicated Hosting
- •Other Options
- •Installing vBulletin
- •Tools
- •Downloading the Installation Files
- •File Extraction
- •Upload Preparation
- •Creating the Database
- •Command-Line Database Creation
- •cPanel Database Creation
- •File Editing
- •Uploading the vBulletin Files
- •Running the vBulletin Installation Script
- •Troubleshooting
- •Database Access Issues
- •Images/Styling Not Showing
- •PHP Errors
- •The vBulletin Control Panel
- •Importing Data into vBulletin
- •Downloading the ImpEx Script
- •Compatibility
- •Preparing for Upload
- •Editing the Configuration File
- •Upload the ImpEx Script
- •Running the ImpEx Script
- •Default Usergroups
- •Securing vBulletin
- •Help & Support
- •Summary
- •The vBulletin User Experience
- •How to Get to the Board?
- •What the End Users See
- •Site Logo
- •Forum Title, Login Box, and Navbar
- •Welcome Banner
- •Main Body of the Forum
- •What's Going On
- •Footer
- •Touring the Main Forum—Unregistered Users
- •No "New Threads" for Unregistered Users
- •Registering on a vBulletin Board
- •Touring the Forum—Members
- •New Threads
- •Replying
- •Editing a Message
- •Private Messages
- •BB Code
- •User Tools
- •Display Modes
- •Navbar Changes for Members
- •The vBulletin Administrator Experience
- •Forum and Thread Tools
- •The AdminCP
- •Control Panel Home
- •Latest Version Information
- •vBulletin Options
- •Forum Management
- •Editing and Adding Forums
- •Editing Existing Forums
- •Moderation Options
- •Forum Styling
- •Access Control Options
- •Forum Posting Options
- •Enable/Disable Features
- •Branding
- •Changing the Logo
- •Undoing the Change
- •Summary
- •Types of Customization
- •CSS Modifications
- •Changing the Table Title Text
- •Viewing Changes
- •Undoing the Changes
- •Phrase Modifications
- •Searching for Phrases
- •Making Changes
- •Viewing the Changes
- •Undoing Changes
- •Template Modifications
- •Accessing Templates
- •Exploring a Template
- •Template Structure
- •Adding a FORUMHOME Sidebar
- •Two Changes
- •PHP Code Modifications
- •PayPal Modification
- •File Modification
- •Hacks
- •Pros and Cons of Hacking a vBulletin Board
- •Finding a Hack
- •Installing a Hack
- •Backing Up a Hack
- •Commercial Hacks
- •Summary
- •Setting Up a Forum
- •Creating the Forum
- •Forum Permissions
- •Viewing Permissions
- •Opening the Forum
- •Super Administrators
- •Creating a Super Administrator
- •Other Changes to the config.php File
- •Admin Log Viewing Permission
- •Admin Log Pruning Permission
- •Query Running Permission
- •Undeletable and Unalterable Users
- •Maintaining the Database
- •Backing Up the Database
- •Repairing and Optimizing the Database
- •Some Maintenance Issues
- •Smilies
- •Editing a Smilie
- •Adding a New Smilie
- •Uploading a Smilie
- •Creating Your Own Smilies
- •Avatars
- •Adding Avatars
- •Storing Avatars
- •Summary
- •When to Upgrade
- •Preparing for Upgrade
- •Migrating Changes
- •File Compare Utilities
- •Uploading the Files
- •Running the Upgrade Script
- •Testing the Upgrade
- •Unveiling the Upgrade
- •Summary
- •Styling vBulletin
- •Template Lifecycles
- •Lifecycle 1—Constant Change
- •Lifecycle 2—Working Behind the Scenes
- •Editing the Default Style
- •Changing Image Paths
- •Other Editable Elements
- •Some Tips about Editing Styles
- •Adding a New Style
- •Editing the Style
- •Saving the Style
- •Downloading the Style
- •Making the New Style into the Default
- •Distributing a Style
- •Installing a New Style
- •Summary
- •Hacking vBulletin
- •Making the Changes
- •Locating the Template
- •Hacking the pm_newpm Template
- •Testing the Hack
- •Hack Distribution
- •Tips for Hack Distribution
- •Plugins and Products
- •Getting Plugins and Products
- •Adding a Product
- •Adding a Plugin
- •What If Things Go Wrong?
- •Summary
- •Default Usergroup Settings
- •(COPPA) Users Awaiting Moderation
- •Administrators
- •Moderators
- •Registered Users
- •Super Moderators
- •Unregistered / Not Logged In
- •Users Awaiting Email Confirmation
- •Banned Users
- •Default vBulletin Database Tables
- •Moving Servers in Six Easy Steps
- •Cookie Check
- •Back up Database
- •Download the vBulletin Files
- •Transfer to New Server
- •Database Restoration
- •Back Online
- •Graphics
- •Global Post Text Find and Replace
- •Programming Standards
- •Braces
- •Indenting
- •Give Operators Space
- •String Quoting
- •Return Values
- •SQL Queries
- •Naming Conventions for Functions
- •Summary
- •vBulletin Directory Structure
- •Notes
- •Official vBulletin Sites
- •Main vBulletin Hack Site
- •vBulletin Styles and Templates
- •vBulletin Add-Ons
- •Index
Chapter 1
History
vBulletin has been a success story right from the start.
The vBulletin discussion board software was developed and marketed by Jelsoft Ltd., a UK-based new media company specializing in developing low-cost, high-performance web applications. Jelsoft has over six years experience in the online communities business and has been working with community-driven websites since the birth of the Internet as we know it today.
vBulletin is its flagship product—it is a product that has been designed with speed, security, and flexibility in mind. Jelsoft's goal with vBulletin was to create a product that would both give the site administrators the tools that they need to get the job done, and give the end user effective communication and an enjoyable experience. The end users have a variety of tools at their disposal that allow them to communicate effectively with others, while administrators and moderators have powerful tools that allow them to move, edit, or delete posts, threads, and users, as well as a powerful control panel to control the look, feel, and function of the discussion board.
Development
In over six years of development a lot has changed in vBulletin, but at the same time a lot has stayed the same—speed, flexibility, and security have always been at the core of vBulletin.
vBulletin was originally developed and built to power the VB-World.net community forums, which were some of the world's largest and busiest communities of Microsoft Visual Basic programmers. At the time many products were tested, but none could be scaled up to meet the demands of these communities, so vBulletin had an instant niche. vBulletin has now attracted a large and diverse list of clients from small, special interest sites to big, broad discussion groups.
Another feature important to the vBulletin developers is stability and performance under load. Jelsoft is proud to have been able to test vBulletin under huge loads with over 1000 users taking part in discussions on the board at once. With vBulletin the site owner doesn't need worry about too many posts slowing the board down, as vBulletin has been tested and proved to run smoothly with over 30 million posts held in the database.
Big boards
Of course, the bigger the discussion board you have, the more power it will need. Big boards will require semi-dedicated or even dedicated servers (don't expect to run a popular board on cheap shared hosting), but you can be sure that, if you choose vBulletin, no matter how big your forum gets, you will be able to deal with it.
The vBulletin Advantage
What are the key benefits from choosing and running vBulletin? Here are the top reasons to base your community on vBulletin.
7
Introduction to the vBulletin Board
Versatile
vBulletin is designed to be versatile and can be run on a variety of platforms.
•vBulletin is written in PHP, making it fast, efficient, and capable of running on a broad range of hosting platforms. Shared hosting provides the cheapest option, while semi-dedicated hosting solutions offer more power for a higher price. Fully dedicated servers offer the greatest speed, power, and flexibility, but at a substantially increased cost.
•vBulletin uses a MySQL database for storing data and settings. Avatars and CSS stylesheets (controlling the formatting of the discussion board) can be stored either in the database or in the file system. Similarly, attachments can be uploaded and stored in either the database or the server file system.
•vBulletin is fully scalable. For the ultimate in power and flexibility the database server and the web server can reside on separate computers.
•vBulletin can be run on any system that can support PHP and MySQL (which means that you have a wide choice, ranging from Linux and Windows to Solaris, BSD, and Macintosh).
•All client-side code is XHTML 1.0 Transitional compliant, giving consistent and dependable results in almost all modern web browsers.
•The import facility allows data from another forum to be converted into vBulletin format. This includes users, posts, avatars and private messages. The import facility supports, among others, the following boards: Infopop's Ultimate Bulletin Board, Invision, UBBThreads, OpenTopic, ezboard, phpBB, and Ikonboard.
Performance
No matter whether you site is big or small, you don't want to be waiting around for things to happen. vBulletin is designed with speed in mind, so you and your users, whether on a dial-up modem or a broadband connection, won't be stuck waiting for pages to load.
vBulletin offers:
•Fast page loading
•Responsive interface
•Speedy searches (thanks to effective indexing of the content)
•New/edited posts available instantly—no delays!
Customizable
vBulletin is easy and fast to customize. Thanks to a variety of in-built tools the interface can be changed with the minimum knowledge of web programming languages.
vBulletin offers:
•A templated system—all the code for the interface is conveniently stored as separate templates. Users can also pick and choose the style they want.
8
Chapter 1
•A built-in template editing interface—no need to mess about with text editors and FTP.
•Full access to all the board settings through a custom interface.
•Most built-in text is stored as phrases, which makes customizing or adding multi-lingual support easy.
•The ability to create and store multiple styles, which can be applied to different forums and users.
•Conditionals are supported in all templates. This allows you to write powerful and versatile code.
Easy to Maintain
Even the most stable discussion board needs maintenance every so often to keep it running properly. Also, since it is the data stored in the discussion board that forms the backbone of the community, data backup and restoration is vital.
Features offered by vBulletin include:
•Built-in database backups, style backup, and table repair functions.
•A Task Scheduler to allow the automated running of many administrative tools.
•Extensive board statistics (numbers of users, new users, new posts, new threads, and much more).
•Automatic post pruning to keep database size manageable.
•Extensive server settings and optimization options.
Other Features
vBulletin offers a whole host of other features for both the end users and the forum administrators and moderators. Over the course of the book we will be looking at a number of them.
Here are some of the best and most compelling features:
•Private messaging feature
•Comprehensive smilies and avatars
•Separate and feature-rich administrator, moderator, and user control panels
•Printer-friendly versions of threads and posts
•Linear, threaded, and hybrid display views available for threads
•Built-in calendar
•Comprehensive permission system, based on user, usergroup, or forums
•Moderation queues for user registration and posting
•Attachments, complete with preview thumbnails
•Private forums
•User ranking and notes
•Paid Subscriptions (using PayPal, WorldPay, NOCHEX and Authorize.net)
9