Store Locator Plus 4.5.08 adds Radius Behavior as primary option in the base plugin. The Experience and Premier Add On packs extend the functionality beyond the basic “Always Use” setting. This setting impacts how the radius selector is employed and how locations are filtered before being displayed to the user.
The initial map radius is set under the Experience / Results tab Initial Startup panel.
The radius selection options presented to the user in the drop down menu is set under the Experience / Search tab in the Search Features panel.
The Premier Add On provides territories for locations. Each location can have a territory assigned that describes a rectangular area with a boundary specified in miles or kilometers north, south, east, and west of the location.
Importing locations with territories follows the same procedure as importing a standard locations file. As with all location files the format must be a proper CSV file exported using the UTF-8 character set with no special or non-printable characters.
Once a location is setup with a territory the map markers that are sent back from the server during a user search will include a ‘in_territory’ property set to ‘1’ if the user’s location is within the territory and ‘0’ if not. An additional ‘in_territory_class’ property will also be set to either ‘in_territory’ or a blank string. Both settings are part of the ‘data’ property of the location marker. Continue reading “Highlighting Locations Served By Territory”→
Before you can use the territories features of the Premier add on, you will need to enable the feature under the General / Data tab. This is off by default to reduce the data storage and processing overhead of Store Locator Plus for sites that do not need territory services. Go to the General / Data tab and check off “Enable Territory Bounds” and click save. This will create the necessary data fields and enable territory settings and features within the application.
If you later disable this feature any of the existing location territory data will be retained until you delete the location. However the location search process will no longer restrict search results to locations within a territory nor output data related to locations being inside or outside of a territory; assuming those features are enabled in the Experience settings.
Locations will now show several new fields when managing a location.
Territory Distance Unit – what is the distance unit used with this location to determine the territory coverage. None disables the territory.
Distance North – how many miles to the north of the location is the northern boundary of the territory.
Distance South – how many miles to the south of the location is the southern boundary of the territory.
Distance East – how many miles to the east of the location is the eastern boundary of the territory.
Distance West – how many miles to the west of the location is the western boundary of the territory.
When the location is saved the Territory Bounds is calculated. Editing the location will show the location point as well as the territory it covers.
User Experience Settings
Under the experience tab there is a setting the dictates how locations are shown to the user.
If you check of the Only Show If In Territory checkbox under the Experience / Results tab in the Functionality group the list of locations shown to the user will only include the locations where the user’s address is within the location’s territory. The radius is still used to limit the results that the server processes. If the radius is hidden and set to a default value, caution should be taken to set a reasonable radius. Checking if a point lies within a territory can be time consuming. First limiting the locations to a reasonable list by first filtering those within a certain distance of the user can sped up processing.
For example, if none of your territories are more than 100 miles from the location you can reasonably set the default radius to be all locations within 100 miles. This will limit how many locations need to have their boundaries tested to see if the user’s address is within. This will improve your territory matching performance.