The Premier Add On includes an option to run location geocoding on a regularly scheduled interval. This can be useful for a hands-off approach when loading locations remotely through direct data connections.
Google will return various error codes depending on the data format or request timing. The following table of errors and their meanings will help you determine what is going on when Google tries to lookup up your location coordinates. The most common issue is reaching your quota limits or missing your Google API Key.
When a location is added into your SLP data set, you will see a message “Store Locator Plus wants you to know:” and the output of the Latitude and Longitude where Google thinks the location is.
For Example, I added Sydney Opera House and no street address, just name, the city and the country Australia:
“Google thinks Sydney Australia is at lat: -33.8674869 long 151.2069902”
Whether doing a bulk import or adding locations by hand there are times when you will see a “location uncoded” or “cannot geocode” error message. This is always the result of an address that was sent to Google that cannot be processed in their address location system.
Some clients have datasets of 200,000 locations, none of which include latitude/longitude coordinates, only U.S. street addresses. Often customers want to know import limitations including Google’s limit. As of June 11, 2018 those geocoding limits will change. You should determine how to import, whether to break the list into smaller chunks or switch to the MYSLP SaaS managed service.
In order to perform bulk location imports with a CSV file for the WPSLP plugin you will need the Power add-on installed. MySLP users will need the Power level plan or higher. The following constraints can keep the locations from loading completely or cause slower processing.
Import features are available with the Power Add-on
If checked , use the faster MySQL Load Data method of file processing. Only base plugin data can be loaded, see the approved field name list.
This feature uses the MySQL Load Data command and is much faster than WordPress / PHP CSV file parsing, with the typical Google Geocoding limitations on performance and record counts (if you are not supplying, filling in the latitude/longitude data fields). This feature will only import basic location data. It does not import extended data fields or category data. If you use this along with per-entered latitude and longitude values you can import 100,000 locations in less than 10 minutes on a basic web server. The column headers must be included in the file and must match the basic fields. You do NOT need to include all columns.
CSV Import Format
Getting the proper CSV format can be a challenge when using spreadsheet apps like Excel or Numbers. Here are some tips to getting a valid CSV format out of a spreadsheet app:
- Make sure you always have a header row. That tells the import process what data is in each column. The column headers have meaning, so be precise.
- When a cell is a text field that STARTS WITH A LEADING ZERO, make sure you explicitly mark the cell as text. The easiest way to do this is to type a single apostrophe then the number when adding data to the cell as in ‘01886 for the zip code 01886.
- Always export with UTF-8 support enabled.
- Export to a CSV format. Comma delimited not tab delimited and quoted strings if given the option.
Check out the Example CSV Imports post to get some usable import files you can play with.