Version: 1.0.2, by The M.I.P.
Developer Last Online: Nov 2023
Version: 3.5.x
Rating:
Released: 02-02-2006
Last Update: 02-02-2006
Installs: 19
Uses Plugins
Additional Files
No support by the author.
This plugin uses Maxmind's GeoIP database to look up a visitor's country depending on his IP-address.
You may use this e.g. to display specific content or advertisements depending on the geographical location of your visitors.
Installation:
Download geoip.inc PHP module and save it in your forum's includes/ directory.
Download the latest GeoLite Country DatabaseGeoIP.dat.gz, uncompress it (gunzip or evil ones like WinRAR) and save the uncompressed file under includes/GeoIP.dat (you can change the location of this file in your vBulletin Options).
You should update this file once in a while.
Make sure to have plugin system enabled.
Install product mip-geoiptracker-1.0.xml
Usage:
Use $bbuserinfo[country] (or $vbulletin->userinfo[country]) in your code, your templates, etc.
Have a look on the plugin sources and on GeoIP PHP API if you're interested in getting infos other than the country code.
Changes:
1.0.1 --> 1.0.2
Fixed bug with geoipdatfile setting not being included in product.
1.0 --> 1.0.1
Basic caching is done using cookies.
This plugin is likely to work also with commercial versions of Maxmind GeoIP databases, which would - with minor tweaks - allow resolving a user's location down to region and even city levels.
On high-traffic sites, I recommend using GeoIP PHP extension or Apache module instead of this plain PHP code.
Please note that I don't give free support for this plugin, as the vBulletin part is too simple and the rest is code from Maxmind.
Show Your Support
This modification may not be copied, reproduced or published elsewhere without author's permission.
sounds nice...will it be a reason of heavy server load?
This depends on your server. If your server is already running with high loads, you will definitely experience a loss of performance.
It's a non-intrusive plugin, so just give it a try.
The Maxmind guys basically included an option to use shared memory on Un*x machines (requires PHP with --enable-shmop), so that file i/o can be reduced and the db is kept in memory only once.
While this is a good idea in principle, its implementation is not unproblematic (e.g. because there's only a fixed shm key). So I did not use it in this plugin - but feel free to extend it.
If you need high-performance geotargeting, you'd be better off with using a different approach like GeoIP Apache module.
where is the best place to have this on? in what template?
Postbit / Memberinfo
Don't forget that this plugin doesn't save its data in the users table or in a userfield. Location info is only available for a user/visitor who is currently surfing your forums.
The perfect use is to display banner ads depending on the geographic location of a visitor or to show location-specific content.