Cardinal Store Locator version 1.4.2 was released earlier today and it includes several additions, a few tweaks, and various updates. The most obvious new addition you will notice is additional hours meta fields if you’re using the default custom post type for your location data. The number of hours fields has been extended from three to seven to account for locations that may have unique hours for every day of the week. More importantly, a new filter has been added to control the loading of the assets included with the plugin. Because the locator can technically be included almost anywhere on a WordPress site assets such as scripts, styles and the localized location data load on each page. This isn’t the most responsible way to load the plugin assets but trying to set up detection to cover the multiple ways Cardinal Store Locator can be included on a page or post is quite challenging. Therefore, if you’ve got a few hundred locations added to your site and are noticing an increased page weight, which can become apparent with the localized location data, it is highly recommended to take advantage of this new filter. The localized data is very important for keeping the locator quick vs. doing an AJAX request but it doesn’t need to load on every page of your site. Better detection methods will be explored for a future version of the plugin but until that point the assets filter is a great way to accomplish this.
In terms of fixes an issue with the Full map start setting has been resolved where the number of locations on initial load was still limited to the Store limit setting. In addition, if you were trying to make use of the Search on map drag setting and were finding that it wasn’t working it was due to the merging of a pull request from a third-party to the underlying jQuery plugin. This bug has been addressed and the drag setting should be functioning properly again.
For future updates you can still anticipate the release of background geocoding and custom import functionality. Background geocoding will likely be released with an update before the import functionality. Also, the geocoding methods in the plugin will now add the Place ID from Google if it’s available and this will most likely tie into a future update to take advantage of the information that’s available from the Google Places API.
- Added ability to indicate multiple query string parameter values (for checkboxes) with a comma separated list value.
- Added additional hours meta fields for a total of seven to match days of the week.
- Added bh_sl_page_check filter to disable locator scripts and styles on indicated pages.
- Added bh_sl_filter_vals_”taxonomy” filter so filter values can be modified prior to output.
- Added blur to primary location input field after form submission to hide mobile keyboards.
- Added check to exclusive filtering to make sure filter values are not undefined before proceeding with the regular expression.
- Added disable autocomplete listener setting to disable the listener that immediately triggers a search when an auto complete location option is selected.
- Added functionality to automatically select/check filters on load from query string parameter values.
- Added location details object to cslListClick and cslMarkerClick callbacks.
- Added structure setting to disable form tags.
- Added template URI and stylesheet URI as available variables to Handlebars templates.
- Added WordPress REST API support for default locations custom post type (bh_sl_locations).
- Fixed broken drag search functionality that was introduced after map scope pull request was merged from jQuery plugin.
- Fixed geocoding issue when using an alternative custom post type for locations.
- Fixed Handlebars targeting issue triggered by placing an unordered list within the location list template.
- Fixed issue with full map start where conditional was checking if isNaN was true when it should have been false on full map start list limit setting.
- Updated geocoding functionality to start saving Place IDs when available.
- Updated over 1,000 locations AJAX method to use float values instead of decimals for latitude and longitude coordinates.
- Updated zooming to prevent fitBounds from being used when query string parameters are in use and the location has been set with bh-sl-address.