Store Locator Plus® SaaS WordPress Menus

This is a technical document about the internal structure of the Store Locator Plus® menu configuration.

MySLP SaaS WordPress Menus

How the menu descriptions are laid out:

  • position label : menu_slug [if user_can(<capability>)]
    • label : submenu_slug [if user_can(<capability>)]

Customer Menus

  • 30 MySLP : myslp-dashboard if user_can ( ‘manage_options’ )
  • 1000.1 My Profile : myslp_profile if user_can ( ‘manage_options’ )
  • 1000.2 Log Out : ../wp-login.php?action=logout if user_can( ‘manage_options’ )
  • 1000.3 Contact Us : myslp_contact_form if user_can( ‘manage_options’ )

WordPress Menu Functions

add_menu_page()

For adding “top level” menus.

add_menu_page( 
string $page_title, 
string $menu_title, 
string $capability, 
string $menu_slug, 
callable $callback = ”, 
string $icon_url = ”, 
int|float $position = null 
): string

$menu_slug is the “key” that identifies this menu, must be unique within the WP installation.

add_submenu_page()

For attaching submenus to the “top level” menus.

add_submenu_page( 
string $parent_slug, 
string $page_title, 
string $menu_title, 
string $capability, 
string $menu_slug, 
callable $callback = ”, 
int|float $position = null 
): string|false

The first parameter should match a parent slug (the 4th parameter) from the add_menu() calls.

WordPress Roles & Capabilities

WordPress roles, oddly enough, are stored for each user in the wp_user_meta table in the meta_key ‘wp_capabilities’.

Relationship definition:

  • role slug (Name)
    • capability slug – enabled by default on WP install or granted by Store Locator Plus®

The roles and capabilities within the Store Locator Plus® system include:

  • super (Super Admin)
    • manage_options
  • administrator (Administrator)
    • manage_options
    • manage_slp, granted by main SLP plugin
    • manage_slp_admin, granted by main SLP plugin
    • manage_slp_user, granted by main SLP plugin
  • subscriber (Subscriber)
    • read
  • myslp_customer (MYSLP Customer)
    • myslp_customer
    • read

WordPress Multisite Capabilities

For users on multisite there are two entries in the wp_usermeta table.

The meta_key wp_capabilities on MySLP this value has been set at a single role – ‘subscriber’.
This defines the capabilities of the user on the main site on the platform, this is the master site and should only be open to system administrators.

The meta_key wp_<site_id>_capabilities on MySSLP this value has been set to the role – ‘administrator’.
This sets the capabilities for the subsite, where each user should be the administrator for their own site.

Image by Kevin Seibel from Pixabay

Recovering From Critical Error After WordPress Plugin Updates

petaled flower drawing on white egg shell

This article provides information on how to recover from critical errors after a plugin update. Critical updates can occur for a variety of reasons. These errors can take your WordPress site offline until the error is resolved.

For the purpose of this article we are going to delve into an example where a Store Locator Plus® add on is running an outdated version and the base plugin is updated to an incompatible version. While newer versions of the Store Locator Plus® plugin will auto-detect incompatible add on versions and disable them automatically, there are some third party add ons that do not report version updates properly and can prevent this auto-detection from working.

Here is how to recover from these issues.

Getting Started with Store Locator Plus®

This article covers the first 3 steps (2 if you are using our SaaS product) for getting started with Store Locator Plus®.

Store Locator Plus® makes it easy to add interactive location maps and directories on your website. Our latest technology is included in the Store Locator Plus® Maps and Directories SaaS offering. Some of our customers still prefer the self-managed WordPress plugins available via our Store Locator Plus® for WordPress plugins.

Regardless of which method you prefer, both can be setup quickly and have a fully functional site map or directory listing online in minutes.

Step 1: WordPress Users Need A Google API Key

SaaS users can skip this step. Store Locator Plus® for WordPress users need a Google API key to utilize the full features available in the the plugin. WordPress administrators who are self-managing their plugin updates, security, and Google services need to setup a Google API account so they can start billing for map services. 

If you are a subscriber to  Store Locator Plus® – our SaaS directory and locator service, you can ignore this page, we’ve got it covered. Go to our Getting Started guide and move on to Step 2.

For the Store Locator Plus® for WordPress users these instructions are a general guideline. You will need to visit Google and read their User guide to obtain a new account or update your existing account. Google will bill you directly for your monthly map views and location look-ups.

Step 3: Add A Location Map To Your Site

stock

Add a location map to your site by putting the SaaS embed code or WordPress shortcode on any page. You’ll need to have an active Store Locator Plus® SaaS subscription or have the Store Locator Plus® for WordPress plugin installed and activated.

Make sure you’ve completed the initial configuration and setup steps outline in the Store Locator Plus® Getting Started article.

When a visitor goes to a page with the Store Locator Plus® map code embedded, it will show a default search form and a map centered in your country or on the “Center Map At” address you entered when configuring Store Locator Plus®. When someone searches for a zip code that is close enough to a location you entered it will show those locations on the map.

Location Results Report

Location Results reports are included with the Professional or Enterprise plan. This report is designed to show the locations that were returned by users entering addresses on the search form when looking for locations. This can be useful for determining which locations are appearing most frequently for your site visitors.

To view this report you’ll need to turn on reporting features as outlined in the Reports documentation.

Location Results Report 2208.15+

This report will show up to the top 500 locations returned within the date range selected.

Location Search Report

Location Search reports are included with the Professional or Enterprise plan. This report is designed to show what addresses users are entering on the search form when looking for locations. This can be useful for determining areas where your site visitors are looking for your product or service.

To view this report you’ll need to turn on reporting features as outlined in the Reports documentation.

Location Search Report v2208.15+

This report will show up to the top 500 searches within the date range selected.

How To : Location Categories

Assumptions

WordPress environment is setup and configured including activation of the following plugins

  • Store Locator Plus®
  • SLP Power add on

In addition map service (Google API keys) should be in place and some locations should be added to the system.

A page has been created with the [slplus] shortcode present and the map is rendering properly.

Users are logged in as a WordPress administrator (the process will be slightly different for SaaS users).

Adding Categories To Locations

Objective

Create a location category and attach it to an existing location.

User Action: Add A Location Category

  1. Click on Store Locator Plus® | Categories in the WordPress sidebar menu.
  2. In the left “Add New Category Form”…
    1. Type a category name. (Restaurant)
    2. Click Add New Category
Result

The new category should appear on the category list on the page.

Category list after adding the restaurant category.

User Action: Attach Category To Location

  1. Click on Store Locator Plus® | Locations in the WordPress sidebar menu.
  2. Click the Edit action icon on the first location.
  3. Check off the box next to “Restaurants” in the Power | Categories section of the form.
  4. Click Save.
Result

The category is assigned to the location and appears on the location table.

The location with an assigned restaurant category. This view is showing fewer columns as the Screen Options was updated to removed unused columns from the table view.

User Action: Show Category Select On Front End

  1. Click on Store Locator Plus® | Settings in the WordPress sidebar menu.
  2. Change the Category Selector setting to “Single Drop Down”.
  3. Click Save
  4. On the front end, go to the page that has the [slplus] shortcode.
Result

The search form for the map should show a category drop down.

The front end page with the [slplus] shortcode, showing the category selection filter.

User Action : Filtering Locations With Category

  1. On the front end, go to the page that has the [slplus] shortcode.
  2. Enter an address, choose a category.
  3. Click “Find Locations”.

Upgrading Store Locator Plus

The base Store Locator Plus plugin and add ons are updated on a regular basis.  Often the updates include security and bug fixes or fundamental changes that are designed to improve performance by reducing the memory and/or disk request load when your visitors are interacting with the map.

The most common reason your legacy add on stopped working is because it is no longer supported with the latest version of Store Locator Plus  or vice versa

You may wish to choose to stay with your WPSLP Self Managed plugin and upgrade to the replacement bundled  add-ons or switch to  the managed MySLP.

Make sure you have a backup copy of the current version of SLP you have installed that IS working with your  add on packs. We ALWAYS recommend that your site uses VaultPress or JetPack

Whenever you update the base plugin make sure ALL of  your SLP add-on packs are updated to the latest version.