Showcase IDX: Wordpress Plugin 3.1.4 Released

We've updated the Showcase IDX Wordpress plugin (v3.1.4) which is now officially tested with Wordpress 5.5+.

v3.1.4 also contains a fix that improves compatibility with the way Wordpress 5.4 / 5.5 now handles URL routing. The Showcase IDX plugin would sometimes not properly render, or would issue HTTP/404 (not found) when using Permalink Custom Structures. This has been fixed!

Improved geocoding across all MLS's

We've recently made some improvements to our geocoding infrastructure to ensure as many listings as possible are properly geocoded.

The MLS database is a noisy place, and has its share of errors relating to listing locations. Typos, bad data, and other things happen.

We have done a full audit of our infrastructure and made a ton of little fixes that will result in great improvements in our search app:

  • Far fewer listings with no map location
  • More listings shown on the map and searchable by map/polygon
  • No more listings that display in the middle of the ocean
  • Better map "positioning" when displaying results on map
  • Listings in "new" parts of town will map correctly in our system soon after their locations are known to Google

As of today, we have over 1.5 million listings searchable and 99.9% of them are geocoded.

Keeping it going

We've also added a great deal of internal infrastructure to monitor our geocoding coverage so that we can ensure that we keep up these high levels of excellence in our listing data.

Showcase IDX Plugin now supports lazy loading

We know how important page speed is to our customers, especially those who are investing their time and energy into creating great UX and SEO performance on their websites. With page speed being factored in more & more to SEO performance, we know how important this is to your marketing & traffic-generation efforts.

About 6 months ago, we released support for lazy-loading WP plugins which allowed customers to use lazy-loading plugins on their WP sites. However, the actual thumbnail listing images on our search results page were not lazy loaded.

A New Standard

There is now a widely-supported internet standard for lazy-loading images natively in the browser. It works in all modern Chrome, Edge, Firefox, and Opera browsers; Safari support is coming soon. Support for native lazy-loading is 78% of desktop users and 68% of mobile, and rising every day. See all the details here.

We are now using loading="lazy" for all search results images. Since our default search results page loads 100 listings, lazy-loading has a huge impact, reducing the number of requests by 80-90 and the page weight by 2-4 MB.

Please note that are are still including the skip-lazy attributes on our images so that WP lazy-load plugins do not affect our IDX content.

Before

Images represent 103 of the images requested on the page load, with images weighing in at 2.7MB out of 4MB total page weight.

LazyLoading_Before.png

After

Now, only 31 images are loaded (a reduction of 72 requests!) and there and images are now just 615kB of 2.1MB total page weight (a reduction of 1.9MB transferred).

LazyLoading_After.png

There is nothing you need to do to take advantage of the new lazy loading; it has been automatically enabled on all sites!

Wordpress Plugin Update: New Version available to improve compatibility with other plugins

We have a new version (3.1) of the Showcase IDX Wordpress plugin available today as a Beta version.

The major theme of this update is better plugin compatibility. We have isolated a core cause of conflicts between our code and other plugins and found a way to fix it.

What this means in practice is that you should experience far fewer issues with part of the Showcase IDX experience not working properly. This is one of those fixes that is a bit anti-climactic, in that you'll simply have fewer technical issues, but won't really even notice when it's doing its thing :)

If you have had compatibility issues with our plugin in the past, we encourage you to try this version today. You are also encouraged to try using plugins you might have disabled in the past due to advice from our support team.

Main Plugin Incompatibilities Addressed

The main types of plugins that cause issues with Showcase IDX are ones that edit the page content or try to optimize loading of scripts and css:

  • Optimizer plugins
  • Caching plugins
  • Image Lazy-Loading plugins

Installing the beta version

  1. On the Showcase IDX plugin page within your WordPress Admin (left sidebar WP dashboard navigation), deactivate the plugin.

Screen Shot 2020-05-14 at 9.20.40 AM.png

  1. Deactivate Showcase IDX on the plugins page.

Screen Shot 2020-05-14 at 1.58.51 PM.png

  1. Delete the old version of Showcase IDX.

Screen Shot 2020-05-14 at 1.59.46 PM.png

  1. Click ADD NEW at the top of the plugins page and on the next page, there will be an Upload Plugin option in the same area.

Screen Shot 2020-05-14 at 9.21.33 AM.png

  1. Download the plugin here and then upload the plugin to Wordpress via the Upload Plugin option. Once uploaded, click Install Now.

Screen Shot 2020-05-14 at 2.01.03 PM.png

  1. Click Activate Plugin. You will be prompted to log in to your Showcase IDX account (if you aren't already) and then choose the website available for activation.

Screen Shot 2020-05-14 at 9.22.55 AM.png

  1. Configure the default search URL (match it to what you had it set to previously)

  2. Clear all your existing caches from caching plugins, optimization plugins, server caches, browser caches… all the caches.

  3. Test away! ​​

Technical Details

Previous versions of the plugin would include the HTML and Javascript needed to run Showcase IDX directly in the web page where the shortcode was placed. This presented compatibility problems since other plugins would see this content as "page content" and run their normal plugin magic on it. This is where the problem happened, as these plugins were editing our Javascript code!

We now process HTML and Javascript for shortcodes via separate paths in Wordpress. Other plugins no longer see our Javascript in the page content, and thus they are no longer editing and breaking our code.

Sort by "Map Center" improved

We have updated the sort by "Map Center" feature so that it always favors listings closest to the center of the map. Previously, one of the "sort directions" could favor listings far from the map center, and we have determined that choice isn't useful in practice.

The outcome is that you should no longer inexplicable see no markers on the map for the listings that are displayed in the results area.

Updated our new sitemaps for better compatibility

We have improved the way we generate the new sitemaps for better compatibility (one <loc> per <sitemap> and one <url> per <urlset>).

We have also added <lastmod> to <sitemap>.

Major Data Improvements

We have been hard at work the last couple of months improving our MLS data syncing, and wanted to share with you the results.

  • We have improved how we internally map data from MLS's into our system, making it easier for us to normalize data into our streamlined search structure. This improves cross-mls searches and allows us to fix bugs faster. We have handled 73 mapper updates in the last 3 weeks, a new record!
    • Bathrooms mapper is updated so that now full + half = total in all cases (some MLS's did weird things)
    • HOA fees and taxes are normalized to the same period (monthly/yearly) so that they make more sense.
    • Property Type mapping has gotten a major overhaul and should be more consistent.
    • Single-story normalization is vastly improved.
    • Foreclosure / Short Sale / New Construction normalization is vastly improved.
  • We have improved our data syncing with MLSGRID and Trestle, and done a major upgrade to one of our databases. Together, these significantly reduce our data loading time and our system is able to stay more up-to-date with the MLS.
  • We have cleaned up our image importing and it is much more stable and loads faster on the property search as well now that we are using our CDN for all MLS's.
    • Fixed a bug in using WebP which could cause some images to not work on Safari if they were first viewed on Chrome (and thus a WebP image cached which Safari doesn't support).
    • MLSGRID images (MRED, Realtracs, Canopy) are updated more reliably, though there are still more improvements we want to make there.
    • Misc other small fixes
  • Search restrictions now work on Rental searches as well
  • Various small UI fixes about how listing data displays and is formatted

All together, this represents a huge leap forward in the performance, stability, and reliability of our mls data stores and sets us up for much better success going forward.

Major Sitemaps Update

We are happy to share the news that we have just shipped an updated Sitemap engine!

Sitemap Preview.png

Here are some key features of the new sitemap:

  • Sitemaps now perfectly reflect the default search settings & restrictions, meaning the exact listings that show up on your property search should be the ones in your sitemap
  • A base sitemap is created every 24 hours
  • Incrementals include all listings since the last base and refresh every 15 minutes
  • Sitemaps now load faster which should help with crawlers
  • Sitemaps now pick up mls name changes if your MLS changes its acronym
  • Sitemaps now include comments so that you can more easily verify their contents
  • Miscellaneous bug fixes that improve reliability and robustness

Image Lazy-Loading Compatibility

Many Wordpress Caches & Optimizers (such as Jetpack, Autoptimize, etc.) have a "Lazy-load Images" feature which "takes over" image loading for Showcase IDX images, and causes our app to appear broken in some cases (images wouldn't load properly). One example is the gallery view image carousel on the search results page.

Lazy loading is a great feature for site performance, but it's also a tricky technical feat, and unfortunately most third-party lazy loaders break our app when they try to add lazy loading to the images from the IDX. And lazy-loading an app that's broken is far worse than a working app without lazy-loading.

Fortunately, there is now a semi-standardized way to tell these lazy-loaders to stay away from our images!

Today, we've done just that with the addition of the skip-lazy class and data-skip-lazy attribute.

This will allow you to use a lazy-loader on your site without fear that it will break the Showcase IDX app. Now you can have your cache and images, too, and your website will have far better performance.

So, the next question you're probably asking yourself is "what about lazy loading of the images on Showcase IDX?"

Presently, Showcase IDX does load a small thumbnail of each property without lazy loading. You can control how many listings are displayed to limit the number of images loaded by default. We also lazy-load the rest of the images (2nd through however many there are per listing). We may in the future add additional lazy-loading capability to our search results images as well. Please let us know if that's important to you.

Wordpress Caching Issues with Showcase IDX Plugin are fixed

Historically, each time we released an update to the Showcase IDX Search (which is used by the Showcase IDX Wordpress Plugin), the search functionality would break on Wordpress sites with caching enabled until you manually cleared your cache. This was frustrating and annoying for our customers.

We are extremely pleased to announce that we've developed a solution to this issue! We launched the fix for the caching issue a few hours after the updates that we shipped last week, and can report that we had no reports of any issues, meaning that the fixes are working great!

There should no longer be a need for you to clear your Wordpress caches when we make updates. One less thing to worry about!