I’m happy to announce that a major new update to my jQuery Store Locator plugin has been released and is now available on GitHub. Version 2 is a complete rewrite based on the “basic” plugin pattern of the jQuery Boilerplate. The overall file structure has changed, several of the plugin settings have changed and all of the CSS is now prefixed to avoid potential collisions. In other words, you’re not going to be able to simply replace the main plugin file to upgrade to the latest version. I’ve been working on this update off and on for the past six months, so a lot has changed. I’ve also added many new features based on the most common requests I’ve received. The following list doesn’t cover everything that’s new but all of the important items to note:
- Grunt is now utilized to minify and compile the plugin and CSS. You only need to worry about running this if you’re doing extensive modifications or are interested in submitting a pull request.
- Plugin file structure and programming pattern have been reworked to follow the basic jQuery Boilerplate pattern
- Many of the methods are public and can be called as needed
- Google Maps settings are now exposed as a setting. Instead of trying to modify the plugin to make Google Maps settings changes simply use the mapSettings option to override.
- Added inline directions option
- Added multi-group live filtering via regex for quick category, etc. filtering.
- Added option to search locations by name
- Added option to set custom markers by category
- Added option for paginating results
- Added responsive Bootstrap example
- Added region biasing setting to handle region/country select field
- Added coordinates and address (user input) to primary AJAX GET request for better back-end integration
- Added option to check for query string parameters
For documentation I’ve updated my original post so please refer to that post for instructions and comment there if you have questions. My next step will be to create a premium WordPress plugin that will make use of this jQuery plugin. No ETA at this time but I have already started working on it and have a very early working version.