undefined property: stdclass::$plugin

If you are seeing and undefined property: stdclass::$plugin in your WordPress plugin then your software is out-of-date.

For Store Locator Plus® users that means updating your entire Store Locator Plus® software stack.   That likely means purchasing the latest add-ons for WordPress.

Stop dealing with software updates and patches.   Let us manage your locator map and directory software for you with our My Store Locator Plus® managed service.

Mixed Content Warnings and Site migration

Google’s push for all websites to be HTTPS  has been a game changer over the past few years with many companies  switching from HTTP to HTTPS with some hiccups along the way.  Some of the site transfer mishaps are minor, but if done incorrectly can cause your plug-ins to misbehave , and often is the case, after the transition team has left the building.

Mixed Content Warnings – Loading Assets Over HTTP

If you have never had HTTPS on your site, you will undoubtedly run into an issue with how your site assets are loaded. By assets we are referring to things like images, JavaScript, and even your CSS.   Insecure assets may not stop the green padlock from showing in browsers, but it will add an exclamation point warning to your users that information is being loaded insecurely.

 Site Migrations Vary

Occasionally we see comments from customers that Store locator Plus broke their site or is not working. When asked if they recently  migrated their site they often state nothing has changed.   On further investigation , or by inspecting their console  we often see the “Mixed Content warnings” quite often for images or icons from older versions of Store Locator Plus. This is a sure fire clue that there was indeed a “site migration”. They started out with their site when  the SLP plug-in was originally installed as HTTP and now , at least part of their site, is HTTPS.  This is known as  a protocol migration. If you migrate your site from HTTP to HTTPS, Google treats this as a site move with a URL change. That means you may need to obtain a new Google API key for SLP to work properly. With version SLP 4.9.15 you are allowed to add HTTP referrers now as long as you also obtain a geocode key. See  info about those changes under news

Upfront Investment

A site migration is a great opportunity to address legacy issues. If you have outdated legacy add-ons  this is a good time to invest in your future by planning for and including any  update expenses in your overall budget.  Including these costs in the project scope is the most cost-effective method to ensure your site stays relevant and on-track. When you consider that  issues that may arise after going live will require additional time , resources and, yes, may even create downtime and loss of traffic  to your site it is worth including the new versions in your budget. Contact support if you have made a recent purchase or check our What to Buy guide for options.

 

Q. Why am I seeing a message that I do not have sufficient permissions when I am trying to manage my locations?

You Do Not Have Sufficient Permissions

If you are getting the message “you do not have sufficient permissions to access this page” when trying to access the “Manage Locations” or “Map Settings” page, but “Add Locations ” is working it is because another plugin is interfering with the submenu management module in WordPress. You will likely find that any plugin that has a separate sidebar menu with multiple entries underneath will only work on the first entry. There is little we can do to remedy the situation without risking breaking other plugins. We suggest deactivating other plugins, one-at-a-time, until you find the plugin causing problems then ask them to rewrite their menu and submenu process and admin panel filters to ensure the basic menu system remains intact.

Gray map or blank map and/or search does not work

JavaScript Problems:

Note: Major Updates to WordPress versions (example 5.0 , 5.5 ,5.7) may effect themes behaviors and plug-ins and cause additional errors. We strongly advise updating on a staging site or dev or  test site first instead of allowing AUTO UPDATES)

Many times we hear that an update to SLP plug-in  broke “everything”.  Upon asking  for clarification  we find out that they also updated WP and/or  other plugins or did not update their themes.   WordPress explains how to  use your browser to diagnose javascript error

Issues with the JavaScript part of the plugin usually manifest themselves by showing the search form but either a blank map, a map that is all gray, or a map that appears but search does not wor properly. To identify what is causing your issue use the Firebug add-on with Firefox or any Browser developer tools (see above info in the link to WordPress on how to diagnose with browser).

The WordPress Store Locator Plus map rendering is managed by the slp.js JavaScript file.  It sets up the communication with the built-in WordPress AJAX handler, admin-ajax.   Your server must be setup to allow the built-in WordPress AJAX handler to execute.  Additionally, ANY PLUGIN or THEME that is breaking javascript will break SLP functionality. This is rarely an issue with the SLP plugin.

Common errors or issues:

The PHP JavaScript connector did not load

We have come across this error on several installations. The short answer to this problem is that something in the WordPress installation prevented the Store Locator Plus JavaScript component from loading. This means that the map system cannot communicate with Google. This prevents the map from appearing and search results from working properly on your locations page.

Here are some issues we’ve come across that cause this to happen:

    • PHP version is < 5.3, this generates an error message that you will not see in the browser. Any error message will prevent the JavaScript PHP file from loading. SLP will not work with versions lower then PHP 5.3.
    • PHP Error Reporting Enabled, if PHP error reporting is enabled and ANY PLUGIN has bugs, uses deprecated WordPress functions, or uses deprecated PHP functions they will generate an error message. This error message can be hidden in the browser if the error happens in something that is creating page header information. This will also break the page loading process and prevent the JavaScript PHP from loading.
    • Plugin Errors, any plugin that does not load properly and does ANYTHING with page header output will break and thus cause a domino effect prevent the Store Locator Plus PHP JavaScript component from loading.

In many cases the cause of the maps not loading is because our PHP JavaScript file could not load. We can often detect this and pop-up the “PHP JavaScript connector did not load” warning. However we cannot catch all errors. Why good Javascript is critical.

One of the best tools for searching for errors in the HTML page headers is to use Firefox with the Firebug plugin or any browser developer tool. Turn on the console and check the responses tab under console for any errors. We have resolved many client installation and map problems with this plugin. More often than not we are finding errors in other plugins, themes, or server/site  configuration settings.

The PHP JavaScript page header is a critical part of a working Store Locator Plus installation. Since it loads very late in the page creation process it is susceptible to failures from almost anything else you may be loading on the page or your WordPress site. The the map is not loading and you are receiving this message get some page debugging/tracking tools like Firebug and isolate any plugins that are generating coding/output errors.

IF YOU Update your WordPress environment , BE SURE TO  review  the WordPress VERSION changes  as they have changed.

Review the WordPress suggested requirements

  • Update PhP to 7 or higher
  • Update MySQL to 5.6 or higher
  • Site move to HTTPS 

2017 was  the year  WordPress was requiring   hosts to have HTTPS available. Just as JavaScript is a  necessity for smoother user experiences ,  updated PHP versions are critical for performance,  and SSL just makes sense as the next hurdle  users are going to face.   Note: Google also weighs SSL as a search engine ranking factor and have begun flagging unencrypted sites in Chrome.

Q. I paid for email support what happens next?

A.   For an  email support order:

  • If you pay and order support on Monday morning before 9 A.M EST , someone in customer support will answer you on, or before Wednesday no later than Thursday of the same week.  If you want to speed things up,  you may follow up with  an email to support letting them know you have submitted an order for support and provide your Plugin environmnet information and a brief explanation of your issue.
  • If you order and Pay for support on a Friday, realize that we are on the east coast.   If the support request comes in at 4 PM EST (which is 1PM Pacific time), do not count that Fri,Sat/Sun. The clock would start ticking Monday for a 3 Biz day email query and an acknowledgement of your paid support or a reply , if you have already provided the info concerning your issue, a reply would be forthcoming on or before Wed the following week.

Debugging With Debug Log

With WordPress it is very easy to debug the activation process of a plugin and get a detailed log file of exactly what is going on.

Often there are hidden warnings or errors. Sometimes they are generated by the plugin. Many times they are generated by OTHER plugins or your custom WordPress theme. The first stage of debugging is to turn on the built-in WordPress debugging messages and debug log.

Troubleshooting Large scale Exports/Imports

Issue: Exports/Imports Incomplete

Multiple large-scale exports (export function is available with Power Add-on ) have been tested on the Store Locator Plus dev sites. On a relatively small server, a virtual machine with 2GB RAM running CentOS 6, we  have been able to export 10,000 locations within 15 minutes with no issues. Special characters and extended data have also exported without issue.

If you are experiencing  issues there are several things to check that can cause problems during an export:

Web Server Process Limits

Apache, and nginx  have per-process limits. This is built into the web server to prevent “runaway” processes that eat up all of the CPU and memory on the server over time. On shared servers this limit is very low and typically allows 30 seconds to 2 minutes of processing time. Large data sets can use up to 5 minutes or more of processing time. Make sure your server has a high enough limit to allow the entire data export to complete execution.

Importing Large Lists into WP Store Locator Plus

Hints for the WordPress Store Locator Plus stand alone, self managed plugin with Power add-on. Import features available with the Power Add-on

Load Data

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.