Scroll To Map

By adding the scroll_to_map class on any of the Results Layout HTML elements, WordPress Premier or MySLP Enterprise subscribers can enable the scroll to map functionality on any Store Locator Plus plugin style.    When the class has been added to an element in the results layout that element becomes clickable.  Clicking that element will scroll the map back into view and open the map marker and info bubble for the location that was clicked.

We have used this feature in the new Bennett plugin style.

To add the feature to other styles you will need to have the Premier plugin installed for WordPress.   For MySLP Enterprise users the feature is already enabled.

Go to Advanced Options (MySLP) or Store Locator Plus (WPSLP) | Settings | Results | Results Layout.

Results Layout With Scroll To Map
Results Layout With Scroll To Map

Edit the layout and add scroll_to_map to an existing class on an html element you want to trigger the scrolling feature or add class=”scroll_to_map” if the HTML element does not have a class assigned.

Learn more about other Premier / Enterprise features like the new Category Button Bar.

Bennet Plugin Style with Button Bar

Category Button Bar

The category button bar is a new category selection interface available to WordPress Premier and MySLP Enterprise subscribers.   This new feature is enabled under the Store Locator Plus (WPSLP) or Advanced Options menu then select Settings | Search | Appearance | Category Selector.

The button bar will show clickable links that display the icon and category name for the category which will filter locations that match.    The styling for the display will vary based on which plugin style you select.  Currently the Bennett style from our Plugin Style Gallery is configured to appear as a button bar.   Other styles make show checkboxes or other styles depending on how the CSS is designed.

Bennet Plugin Style with Button Bar
Bennet Plugin Style with Button Bar

Functionality is based on a single-category selection. Clicking a new category will turn off all other categories.

The map center, either the Center Map for initial map loading or the address a user entered, is retained as is the initial or current radius.  The map will zoom in-and-out to show all locations that match within the radius of the center point.

Here is the button bar using the Bennet plugins style on a modified version of the Exists theme that is deployed on the Bennet Trim Tabs site.  This video is on our development servers.

 

 

Learn about other Premier / Enterprise features.

CSV File Import Header

All Store Locator Plus CSV files must start with a file import header that indicates what data is in each column.

The first row of a base Store Locator Plus import file should look like this:

Please see the Example CSV files post for a sample base file with a header.

To speed up imports you should NOT include columns that have no data.

For imports that did NOT start out as a CSV export from the SAME SITE you should NOT have an sl_id column.

For geocoding, assigning a latitude and longitude, to work during import you need to have at least one of the address fields in your file and preferably these main fields:

  • sl_address
  • sl_city
  • sl_state
  • sl_zip

All field names can drop the leading “sl_” for readability.   For example sl_address can become address.

Add ons for Store Locator Plus can extend the fields that can be imported.  The field names usually match the field label, for example the Experience add on can have “Featured” and “Rank” as import columns.

To import files you must have the Power add on for WordPress plugins or be using the Power , Professional, or Enterprise level of service for MySLP.

Adjust Locator Styling

This set of instructions will require you to be using the MySLP Professional level of service or higher.   The Professional level includes the Experience add on that provides the Custom CSS rules interface.   Instructions here are specific to MySLP but will work for WordPress plugin users as well.

Get The Existing Style Rule

Open your website with your browser.

In your browser menu bar open developer tools.  This will open a developer section on your browser window.

Right-click on the element you wish to re-style.  This will show the page HTML and CSS rules in the developer window.

Select “Inspect Element”.

You will see the specific element highlighted in the HTML section of the developer window and the set of CSS rules that are applied to the element.

Right-click the top rule and select “copy”.  This will copy the entire rule including the CSS selector.

Modify The Rule Via Store Locator Plus

Login to your MySLP account or WordPress admin panel.

Go to Advanced Options in MySLP (Store Locator Plus in WordPress).

Select Settings | View from the menu.

Scroll down the page and paste the copied rule in the Custom CSS box.

You can now add to the rule using standard CSS notation.

Click Save.

View The Changes

Reload your web page.

Notes

Keep in mind many web hosts cache CSS.   Make sure you have cleared any proxy cache you have running as well as your browser cache.

A simple way to force your browser cache to reload (most of the time) is to hold down the shift key while clicking the “page reload” in your browser’s address bar.   Some browsers are overly-aggressive with caching (Safari!) and you may need to clear your history.

 

The Video

An example for our Weebly South Carolina Ice Cream site on how to tweak the CSS.

 

Blocking Locator Requests By Query Volume

Premier Members with an active subscription and MySLP Enterprise level users can restrict the number of locator queries that can be made by a single IP address.   This feature can help prevent “location list theft” where a competitor uses the locator to scrape location information from a website or JavaScript query.

Note: In order to enable these settings you must enter your Premier Subscription user ID and Subscription ID under the General / Admin tab.  When entered correctly the notice under “Add On Packs , Subscription Accounts” will tell you your subscription is validated.   This feature is only functional while your subscription is active.

Entering subscription data for Premier Subscriptions. A valid subscription will look similar to the status notification here.

When your subscription has been validated you will see new options available to you under several Store Locator Plus tabs.    The new Security settings will appear under the General tab, Server subtab as shown below.

New security settings for blocking locator requests based on volume of queries.

Block Requests Limit

This is the maximum number of location searches a user can perform within the Block Requests Time Span before their IP address is blocked from all locator requests.

This should be set to an integer value greater than 0.

The first page load request from an IP address is always allowed, even if this setting is 0.

If this is set to “2” and the Block Request Time Span is set to “Hour” the system will allow 2 location searches before the IP address is blocked.

The initial loading of the locator page will count as a “search” if you have the default “show locations at startup” enabled.

Changing this parameter will not release already-blocked IP addresses.

Block Requests Time Span

This setting determines over which period of time the locator request limit is checked.   A user that has more than the Block Requests Limit number of locator searches performed in this time period will cause their IP address to be blocked from future location searches until their IP is “released” from the block list.

Setting this value to Never will disable the IP blocking system.

Changing this parameter will not release already-blocked IP addresses.

Release IP After

This is the maximum amount of time a request is “remembered” for a given IP address.   Once this amount of time has passed since the most recent location request that triggered the block the IP address is “released” and once again free to perform location searches.

IP Whitelist

A list of IP addresses that will not be tracked by the blocker.   This allows unlimited location lookups from these IP addresses.

Each address entry should be on a separate line.

Uses standard Classless Inter-Domain Routing (CIDR) format.   Typical entries include:

  • Whitelist a specific IP address: 192.168.1.1
  • Whitelist an entire C-class block: 192.168.1.0/24

Related Notes

Keep in mind that an IP address is not a unique “user” or “computer”.  Many locations share an IP address such as a hotel or your local Starbucks.    The limitations will apply to the entire group of users from the same shared IP address.

Once an IP address has been blocked, subsequent location requests are not tracked until the block has been released.  This design lessens the server load in both volume of data stored and data I/O requests.   It helps alleviate issues from possible denial-of-service type attacks where a bot loading requests in rapid succession could overwhelm the data storage and/or database I/O processing.

 

 

Blocking Locator Requests was added in the Premier Plugin version 4.7.11.

 

 

Search Form Style

Search Form Style sets the styling for the interactive locator elements on your site.   It uses pre-built jQuery Theme Roller style CSS designs to create a simple way to style interactive elements such as the autocomplete feature (available in WPSLP Experience or with MySLP Professional) on the address box.

The default styling is set to “None” which provides not special styling rules from interactive JavaScript elements in the locator interface.   This allows the site designer to create their own styles for the website in which the locator will be placed.

Search Form Style Default None 2017-05-23_16-20-30.png
Default styling for autocomplete is “none”.  The theme in this example does not specifiy any ui-autocomplete styling. The background inherits the transparent background used by the website as the default for all divs.

The base service also includes the Base jQuery theme.

 

Setting A New Style

For WordPress plugin users go to the Store Locator Plus selection on the sidebar menu.

For MySLP users go to Advanced Options.

Select Settings from the tab list.  Search will be the default sub-tab.

Scroll down to the Appearance section and expand it by clicking the word “Appearance” if necessary.

Select a new style from the Search Form Style drop-down menu.

Selecting Base Search Form Style
Selecting a search form style for interactive elements.
jQuery Base default styling 2017-05-23_16-23-52.png
jQuery Base Default Styling

Available For WPSLP and MySLP

Search Form Style is a feature that is included in the base plugin of Store Locator Plus for WordPress and is available under Advanced Options for all levels of the MySLP service.   Premier members on WPSLP and Enterprise Level users for MySLP will have multiple options for the Search Form Style.

 

 

Curly Quotes In WordPress Shortcodes

WordPress blog posts likes to use curly quotes instead of straight quotes whenever you write an article.     Our documentation site is built on WordPress which means many of our articles are replaced any quotes we type in an article with curly quotes.

The problem is that the WordPress shortcode processor does NOT like curly quotes.   If you use curly quotes in a shortcode attribute such as [slp_directory by=”city”] and those quotes are “curly”, WordPress treats the quotes as a plain-old alphabetic character just like the C-I-T or Y in “city”.   In other words WordPress things you mean “by quote-city-quote” not “by city”.

Why is that an issue?

If you copy-and-paste most examples from this documentation site WordPress will copy the “pretty curly quotes” into your shortcode.     If you paste that into your WordPress page it breaks.

Straight versus curly quotes when pasted into a page.

An example of how this can impact Store Locator Plus can be seen from my example where I pasted the slp_directory shortcode directly from the docs site into my test site.    I get an invalid data query because WordPress added curly-quotes to my data field name.    The SLP database does not have a field name quotesl_storequote but does have a field named sl_store.

The fix?

Make sure you re-type each quote manually.  Typing the ” in your blog instead of copy-and-paste will ensure you are getting “straight quotes” in your shortcode attributes not curly quotes.

This is how the example looks now that the curly quotes have been replaced with straight quotes.

Store Locator Plus 4.7.9

Version 4.7.9 of the Store Locator Plus application includes changes to the admin interface user experience.    Premier members who have current subscriptions for WordPress or are Enterprise level subscribers for MySLP have a new module that adds URL control functionality.

All Users

“Experience” Tab has been renamed “Settings”

Formerly the tab was referenced as “Experience ”  (back end) where you had  options to change how the search,map,and results interfaced. These options are now under the Settings tab, the functionality of the tab remains the same. The change was made so the nomenclature is now in line with the application interface standards.

Upgraded Accounts

Enabling Modules

The application separates functionality into different application modules.    This will ensure that extra overhead is not incurred for features not being deployed in your environment.  The interface for turning modules on and off is found under the General | Server tab in the Web App Settings section.

Power Users

The WordPress plugin includes a module for building SEO friendly web pages based on location data.   The option is a checkbox to enable the Pages module . This can be found under the General | Server | Web App Settings section.

Enterprise / Premier Users

Enabling the Territory Bounds module has been moved from the General | Data tab to the General | Server | Web App Settings section.

URL Control

A new URL Control module has been added to the application.   Enabling this module will turn on the interface to allow additional data to be presented in a web page URL to impact how the locator behaves.

URL Control : Allow Location In URL

The first URL Control option is to pass a location ID in via a URL.   Adding ?location=<id> to the end of a web page address that hosts the locator will cause the page to load with the specified location being highlighted as if the map marker was clicked.  The default behavior is to show the info bubble for that location.

 

Layout Shortcode Cheat Sheet

The Experience Add On allows you to custom tailor the look and feel of the Store Locator Plus plugin on your site.   To accomplish this the plugin uses a combination of HTML and special shortcodes.   These can be changed or checked off under the Settings* tab  the plugin.

* formerly referred to as Experience tab, if you do not see Settings in the UI you are not using the latest version of Store locator Plus

The Overall Layout

This is set via the View / Layout setting.    It determines the overall layout for the plugin based on 3 primary components: The Search Form, The Map, and The Results.
Continue reading “Layout Shortcode Cheat Sheet”