This small mod allows you to treat search engine robots (i.e. GoogleBot, Yahoo Slurp) as registered users instead of guests, as they are treated by default in VBulletin.
This is handy if your site allows limited access to guests, but full access to registered users. By default, a search engine robot would only be allowed to index what a guest could see, but with this mod, it would allow them to fully index your site as a registered user.
This mod uses the spiders_vbulletin.xml file for determining if a visitor is a bot or not, so make sure you have that file up to date. The one that comes with VB is pretty sparse, but it works. If you're only interested in GoogleBot, then the default file works great.
WARNING! This mod requires a very small edit to a VBulletin core file. This means whenever you upgrade to a new version of VBulletin, you'll need to re-do this edit, if you overwrite this file. If the idea of editing a VBulletin core file bothers you, don't install this mod! I won't be held responsible for your forum being fouled up. This mod is very safe however, so don't fret.
Install Instructions:
1. Unzip the product-memberbot.xml file on your system.
2. Go to your VBulletin AdminCP and click on Manage Products under the Plugin Manager section.
3. Click on Add/Import Product.
4. Click on Browse on the first line (Upload the XML from your computer) and locate the product-memberbot.xml file. Click on Import to upload it to the system.
5. Click on Plugin Manager, and ensure that the new plugin named Bot Checker, which is found under the init_startup hook, is enabled.
6. Now the fun part, you'll need to edit the core VBulletin file init.php which is located in the includes directory under your forum home.
For example, if your forum home is located in /home/blah/forum, then init.php is in /home/blah/forum/includes
If you can edit the file on the server without having to download it, more power to you.
In init.php, find this line (should be near the very bottom of the file, it was line 403 in mine):
Code:
if (!empty($db->explain))
Add ABOVE this line:
Code:
if ($is_bot == 1) {
$vbulletin->userinfo['usergroupid'] = 2;
}
NOTE: My registered users group is ID #2. Yours may be different, you may change this to any group ID you like.
7. Save init.php and upload back to your server if you had to download the file to edit it.
If you're editing on the server, save it, and that's it!
================================================== ========
That's it! Search Engine bots should now "see" your forum as a regular user, not a guest.
Questions, comments, improvements are more than welcome. Please use this thread as a cental support site. It makes it easier for me to help out. Also, you may visit my site and fire me off a PM for help, or just send a quick thanks or shout out.
Enjoy!
// trilljester
Show Your Support
This modification may not be copied, reproduced or published elsewhere without author's permission.
now in includes/init.php around line #400, look for the following:
Code:
$vbulletin->options['contactuslink'] .= $vbulletin->session->vars['sessionurl_q'];
}
}
// CSRF Protection for POST requests
if (strtoupper($_SERVER['REQUEST_METHOD']) == 'POST')
Replace with the following:
Code:
$vbulletin->options['contactuslink'] .= $vbulletin->session->vars['sessionurl_q'];
}
}
// memberbot mod:
if ($is_bot == 1) {
$vbulletin->userinfo['usergroupid'] = XX;
}
// End of memberbot mod
// CSRF Protection for POST requests
if (strtoupper($_SERVER['REQUEST_METHOD']) == 'POST')
i can see provisions for verifying the bot IP address in the mod code, but it doesn't seem to be active..