Import notes: vBulletin
The following notes are common to all of the vBulletin importer systems. There are also version-specific notes to follow, which describe preparatory steps that you can perform for individual vBulletin versions.
When importing forums from vBulletin, you may wish to place the entire imported forum tree into a single parent node. This can be particularly useful if you are importing a vBulletin forum into an existing XenForo forum with its own forum / node structure in use.
The importer configuration system will present a list of existing forums / nodes that exist in the XenForo installation, into which the vBulletin forum structure can be imported, so if you plan to make use of this setting, you should ensure that you have created the node (we would recommend a Category-type node) into which your vBulletin structure will be imported prior to starting the importer configuration process, so that it appears in the list of available nodes.
If you would prefer not to import the vBulletin forum structure into a parent node, you can ignore this setting entirely.
Avatars and attachments
If your vBulletin system stores its attachments or avatars in the file system, rather than the database, you will need to provide the full system path to the folders in which your attachments and avatars are stored. Commonly, these paths follow the following patterns:
If the importer detects that your attachments and or avatars are stored in the database, no configuration is necessary.
Custom FAQ pages
Importing vBulletin FAQ pages as XenForo help pages fits their intended purpose better, but any parent/child relationships between your FAQ pages will be lost. If the parent/child structure is important, you should choose to import the FAQ pages as page nodes instead.
If you decide to import these as page nodes, you may also choose to import them all into a single parent node, in order to prevent them from being scattered among your existing nodes. The system will show a list of existing nodes into which you can import the pages, so if you want to import them into a new node, you should create this new node prior to starting the import process - see the section on importing forums for more details.
vBulletin notices will be imported as XenForo notices. Notices are divided into persistent and non-persistent notices, depending on the options with which they were configured in vBulletin.
The import system will allow you to import each notice type as either Block, Scrolling or Floating mode.
Rather than attempting to import vBulletin smilies automatically, the importer will instead generate a smilie import XML file in XenForo format, and then store that file in a location that is scanned by the XenForo smilie system.
You may specify a file name, but the default name, which is based on the name of the database from which you are importing, is usually the best option.
After the import process is complete, you can visit the XenForo smilie manager and use the Import smilies tool to select the smilies from your vBulletin source that you want to import using the Import smilies from XML generated by data import system option.
vBulletin 3 and 4 with Blog
Individual users' blogs will be imported as a forum-type node containing threads which correspond to blog entries, with replies corresponding to blog comments.
You must specify a node name in which these blog forums will be created during the import configuration stage.
As with attachments and avatars, if your blog attachments are stored in the filesytem rather than the database, you must provide the full file system path to your blog attachments folder during the import configuration process.
vBulletin 4 with Blog
vBulletin 4 uses a different system from vBulletin 3 in which to store blog attachments. A separate import step is required in order to import these attachments, after any vBulletin-3-style blog attachments have been imported.
If these attachments are stored in the file system rather than the database, the full path to the main attachments folder is required here. It will use the same path as is used by the main attachment system, but is presented as a separate option in the unlikely event that you want to import blog attachments but not threads and posts.
vBulletin 5 stores all content in its node tree, and for the purposes of importing, there is no distinction in the data between forums, threads and posts, blogs, blog entries and blog comments, and groups, group discussions and replies.
When configuring the import, you may opt to import all forums, blogs and groups, in which case they will all be imported as forums, threads and posts into the XenForo node tree, or alternatively you may wish to import only forums, threads and posts into XenForo.
- If you choose the former, blogs and groups will be imported into nodes entitled 'Blogs' and 'Groups', as in the vBulletin 5 structure.
- If you choose the latter, only 'channels' that are children of the 'Forum' channel will be imported.
XenForo redirects for vBulletin
After you have completed your vBulletin import, you will probably want to have any URLs pointing to your original vBulletin installation automatically redirect to their corresponding XenForo URL. This can be done with minimal effort, using the XenForo redirects for vBulletin add-on.
To use the system, start by installing the add-on, which can be done from the 'Add-ons' section of your admin control panel.
Next, proceed immediately to the Options section of the control panel, and navigate to the newly-added vBulletin import option group.
Inside this group, you will find an option called vBulletin import log table. Use the drop-down menu to select the table in your database that you created during the import process to act as the import log. This table contains all the information that is required in order to map old vBulletin URLs to new XenForo URLs.
As soon as you save the option, the redirect system activates.
It is important to set the vBulletin import log table as soon as you install the redirection add-on, as you will quickly start to receive traffic from search engines etc. If you do not set the option, your server error log will quickly fill up with warnings about the option not being configured.
XenForo at same URL as vBulletin
If your XenForo installation essentially overwrites your vBulletin installation, and lives at the same URL (ie: vBulletin forums lived at http://example.com/forums and XenForo lives at http://example.com/forums), there is nothing more to do for your redirects to work.
XenForo and vBulletin at different URLs
If your vBulletin installation lived at a different location from your XenForo, (ie: vBulletin at http://example.com/old-forums and XenForo at http://example.com/new-forums), then you have a little more work to do.
src/addons/XF301VB/SourceLocation/ folder, you will find files
htaccess.txt. You will need to copy both of these files to the directory in which your vBulletin installation resided.
Once there, rename
.htaccess and open
index.php in a text editor. The contents look like this:
<?php // Enter the full path to your XenForo directory here: $dir = '/home/username/public_html/xenforo2'; require($dir . '/src/XF.php'); XF::start($dir); XF::runApp('XF301VB\Pub\App');
Simply replace the value of
$dir with the full path to your XenForo directory, so that the script knows where to find your XenForo installation, then save the file.
$dir = '/users/example-user/htdocs/new-forums';
The use of .htaccess here assumes that your webserver is running Apache, or some other system that understands Apache's mod_redirect syntax. If you are using Nginx or another system, you simply need to replicate whatever configuration you have in place for XenForo's own friendly URLs and apply it to your vBulletin directory.
You can then test the redirection by searching Google or any other search engine for content that you know existed on your vBulletin installation, and checking that they properly redirect to their new location on your XenForo installation.
If you ever delete or empty your log table, redirects will immediately and irreparably stop working. Don't delete the table!