Winding road in forest, ShopWP Roadmap

The Complete ShopWP 4.0 Roadmap: here’s what to expect

If you haven’t heard yet, ShopWP 4.0 is coming later this summer! For months I’ve been gathering feedback asking how I can improve the plugin. During that time, I’ve amassed a ton of requests and I appreciate everyone who has reached out with feedback. You’re amazing!

In this post, I’ll be outlining the roadmap for version 4.0 and what everyone can expect as development continues.

Table of Contents

Features ๐ŸŽ

It wouldn’t be a major release without new features! Version 4.0 is gearing up to bring many highly requested additions to the plugin–especially surrounding the Storefront, Cart, and Subscriptions. Below is a small sample of what’s to come:

Subscription products

Support for subscription products has been a recurring request for quite awhile. The difficulty has been primarily a lack of direct Shopify API support. However, this year Shopify released many new API endpoints that make displaying and managing subscriptions possible!

Even with these new changes, actually providing support for subscriptions is no easy task. Shopify decided to only provide API access, and instead, lean heavily on their partners to create the admin settings, UI, etc. In other words, subscriptions are still not really “native” to the Shopify platform. Because of this it takes a massive amount of work from start to finish to provide a workable solution.

Recharge logo

With this in mind, instead of completely reinventing the “subscriptions wheel”, I’m planning to integrate with one of the most popular Shopify subscriptions apps, Recharge.

I think this makes the most sense, at least in the short term. I know some of you probably use Bold Subscriptions and I would like to integrate with this app as well. However I’m going to start with Recharge first, and if all goes well, integrate with Bold after the 4.0 release.

Storefront improvements

One of the biggest pain points currently surrounding the Storefront component is getting things setup. As it stands, there are three “steps” that you must take: adding the proper HTML, creating the shortcode itself (and applying the dropzone attributes), and finally adding the CSS.

All of this is way too complicated and should be abstracted away. To solve this, I’ll be providing users a way to visually build the Storefront component. This will create a much easier way to customize things and will display a preconfigured shortcode for copy & paste. I think this will not only introduce more users to this useful component, but massively simplify things.

Another common request has been to provide more options for filtering by various criteria, like collections. I’ve been meaning to add this for awhile and am happy to announce that it will finally be shipped in 4.0.

Cart improvements

The ShopWP Cart experience is a central aspect of the plugin. Much of the user’s attention is eventually funneled into this component.

One powerful feature of the current cart experience is the ability to add custom data to an order. I have many people asking me how to implement the data, but it always requires development experience to configure. It’s not very intuitive as it currently stands, that’s for sure.

In 4.0 I’ll be adding an easy way for store owners to provide customers simple cart fields such as datepickers, text fields, email fields, etc. All of these will be configurable and easily added to the cart.

I also have plans to add shipping information to the cart so the user can configure this before checking out.

Divi extension

Divi WordPress logo

Last year I released both an Elementor and Beaver Builder extension for ShopWP. This allows anyone using those page builders to easily drag and drop their products into complex custom layouts. So far the reception has been great! But people keep asking me … where’s Divi?!

An official Divi extension for ShopWP will finally be coming in version 4.0. Wahoo!

To see the full list of upcoming features, view the public Trello board.

User Experience โ˜€๏ธ

Successful user experiences generally excel at making complex interactions dead simple. This is one of my guiding principles to apply in 4.0.

An example of this was recently added in version 3.6.1 with the “Edit in Shopify” button on the product screen. This does two important things at once; it allows the user to easily edit their product information (without context switching), and it also clearly communicates how the plugin works (one-way data syncing).

An example of the edit in Shopify button within the ShopWP product screen
“Edit in Shopify” button on product edit screen in current version
ShopWP products screen with inline editing
Inline “Edit in Shopify” link in current version

Keeping with this spirit, below is a non-exhaustive list of UX improvements that are planned for ShopWP 4.0:

Improved syncing

The syncing process could benefit from a few major upgrades ๐Ÿ™‚.

First, it would be great if there was more control over what is synced. In the current version of the plugin, using the “Sync Detail Pages” button will create the product posts. However behind the scenes, it will also sync your product tags, variants, images, etc into dedicated database tables. This is largely a waste, since most users won’t need this data nor do they know that it exists. Coming in version 4.0 will be dedicated syncing tools. This will allow you to sync specific data only, such as tags to use with the Storefront component or product images.

Second, there will be an upgrade surrounding automatic syncing. The current plugin uses webhooks when responding to events that happen inside Shopify (such as a new product being created). Version 4.0 will come with a cron job option, allowing you to schedule dedicated syncing at predictable intervals.

Finally, much of the syncing will be refactored in React and the current jQuery implementation will be removed.

Simplifying overall plugin

The plugin needs to be simplified! I hear this feedback a lot and I agree for the most part. There are tons of opportunities to streamline and hide details which most users don’t need to know about.

For example, the process of displaying products is still too complicated. Unless you’re using one of the many Gutenberg blocks or extensions that come with ShopWP Pro, you’re probably spending a lot of time fiddling with shortcodes. Apart from it being tedious, it leaves too much room for user error if you mistype a shortcode attribute or miss a single character.

With this in mind, version 4.0 will come with a brand new visual builder tool! This will enable users to visually build their product layout in a much more intuitive way.

At the moment, the plugin’s permalink structure is pretty limited. As it stands you’re restricted to the slug of whatever your default pages are set to. This can result in problems if you want your default page to contain a separate slug, or if you want to do something fancy.

Version 4.0 will provide a similar permalink customization experience to that of WooCommerce which will allow you to set the exact permalink you want.

In addition, I’ll be creating various PHP hooks which will allow developers to make custom rewrite rules and such.

New translations

This one is pretty straight forward. Many new translations will be coming to ShopWP Pro including Norwegian and Canadian French.

To see the full list of upcoming UX changes, view the public Trello board.

Documentation ๐Ÿ“–

While the current ShopWP docs site does a decent job of documenting the plugin options, many of the guides and screenshots are outdated. This needs to be updated to reflect all the awesome new (and current) features that the plugin provides.

I think it would also be useful to refine the getting started section for new users. The current “syncing” video shows a completely different plugin UI, the screenshots don’t match, and the actual copy is fairly outdated.

I’ll also be creating short tutorial videos (1-2 minutes long) demonstrating how to use the various plugin features. I think this should help lessen the confusion over what they do and how to use them. For example, “What the heck is the “connective” shortcode attribute?” and “How do I display a simple product carousel?”.

To see the full list of upcoming documentation changes, view the public Trello board.

Bug Fixes ๐Ÿ›

Ahhh, the perennial bug fixes. We all hate bugs, and I’m making it my mission to squash as many as I can for version 4.0. Below are some of the most annoying bugs that will be resolved:

Fixing “https” error during sync

This is an issue that was recently created in version 3.5.1 due to edits made to the syncing. If you see this error showing it’s because you accidently left the “https://” part in your domain. This can also throw an error if you keep the www part as well.

Obviously this needs to be fixed. The user should be able to add the domain with or without https and www.

If you’re experiencing this issue, just reinstall the plugin and connect to Shopify without https:// or www in your domain. In 4.0 these will be removed automatically for you.

Sale notice mistakenly showing for all products

I recently added a “sale” notice on top of the product’s feature image, similar to the “out of stock” notice. Unfortunately it appears that this is being mistakenly added to all products, not just products that are on sale.

To temporarily fix this, add this CSS to your WordPress theme:

[data-wpshopify-is-on-sale="false"] .wps-product-image-on-sale-label {
   display: none !important;

The Pro version of the plugin provides an option to sync a products feature image as a native WordPress image. Recently this has stopped working and will be fixed in version 4.0.

Divi builder conflict

One of the more annoying bugs has been the conflict with Divi. Apparently the JavaScript of ShopWP and Divi conflict with one another, preventing Divi from working at all when ShopWP is installed.

In addition to fixing this compatibility issue, I’ll be creating a dedicated Divi extension similar to Elementor and Beaver Builder.

Regression test webhooks

The current automatic post syncing has some compatibility issues when collections are updated. This is due to some bugs in the current webhooks code. A big thanks to wowflak and Otmar Manuela in Slack for pointing this out to me. This one will finally be resolved in 4.0.

To see the full list of upcoming bug fixes, view the public Trello board.

Developers ๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป

Since version 1.0, I’ve always tried my best to prioritize developer features for the plugin. As a developer myself, I always appreciate it when plugin authors open extensibility up to the broader community. More importantly I think this can lead to a better overall product for everyone.

More hooks! PHP and JavaScript

It goes without saying that hooks are the primary entry point for devs. I’ll be providing a ton of new PHP and JavaScript hooks for things like:

  • Storefront
  • Cart
  • Pricing
  • Roles & Capabilities
  • …and more

More PHP functions

In addition to the hooks, I’ll be adding many new internal PHP functions for doing things like grabbing tags, vendors, or fetching products from a collection. Many of these “internal” PHP functions are hidden, so I’ll be doing a better job at showcasing them and demonstrating how they work.

Performance ๐ŸŽ

Ecommerce needs to be fast. I’m really striving to make the plugin as lean as possible in 4.0. No more loading things that aren’t necessary! This means I’ll be lazy loading much more of the JavaScript and stripping out code that just isn’t used anymore.

Also, many of you have made it clear that you want your Google PageSpeed numbers to go up. Rest assured. I’ll be making sure the plugin passes these crucial tests with flying colors.

Track Progress ๐ŸŽฏ

I’m trying a new process of being as transparent as possible in this release. I’m hoping this provides better communication during development and makes you feel apart of the process.

I’ve setup a public Trello board for the ShopWP 4.0 tasks. I’ll be updating this everyday as I continue working through the release. You can view this board if you’re curious to know what exactly will be in 4.0 and how much longer the release will take.

๐Ÿ‘‰ View the public Trello board.

That’s it for now! I hope this post succeeded in providing a detailed rundown of all the exciting things coming in the next evolution of ShopWP! If you have any feedback whatsoever, please don’t hesitate to send me an email:

Thanks y’all!

A sky full of fireworks

ShopWP 2.0 is here!

For the last eight months, we’ve been arduously developing the next version of ShopWP. After what seems like an eternity, we’re happy to finally announce its completion; 2.0 is here and ready to use! ๐Ÿ‘๐Ÿ‘๐Ÿ‘

Understanding the limitations of 1.0

When we made version 1.0, certain design decisions were made which added unforeseen limitations to the overall capabilities of the plugin. Let’s walk through them quickly.

Syncing compatibility

The first limitation is how 1.0 syncs the Shopify data. Take products for example. Because version 1.0 renders everything on the server, we must sync everything into WordPress so that we can access it from the PHP templates. And when I say everything I mean just that; product titles, images, prices, variant information, collections etc. Everything is synced and stored in custom database tables in version 1.0.

This isn’t necessarily bad, assuming your web host can handle it. But this brings us to the first major limitation of version 1.0 which is that:

Making a custom syncing process compatible across most web environments turns out to be very hard! ๐Ÿ˜†

In order for the plugin to be successful, we need to make it available to as many users as possible including those who may have less than adequate hosting providers. In this regard, the plugin has always been hamstrungโ€”requiring lay users to adjust things they shouldn’t need to adjust simply to use the plugin like PHP and Apache settings, for example.

Data reliability

Another limitation of version 1.0 is data reliability. If you’re able to successfully sync your Shopify store, you’re still responsible for ensuring this data stays up to date. For example, if you’re a Free user, you need to manually resync your store each time you make any changes inside Shopify. If you’re a Pro user, you have access to automatic resyncing but this can also sometimes fail due to web server issues. These can be annoying to deal with.

Now for some users, this isn’t a big deal. They can simply do a resync when they need. However the issue is this: for the users which it is a problem, it’s a major big deal problem. In fact, it’s a deal breaker. They simply cannot use the plugin without the accompanying data reliability due to their store requirements.

How 2.0 solves the current limitations

Version 2.0 solves the above limitations by providing a new feature called Lite sync. Lite sync is an alternative syncing method that when turned on, won’t actually “sync” any Shopify data into the WordPress database at all. Instead, it fetches the data at runtime via JavaScript.

This solves both limitations. The plugin no longer has to perform a resource intensive process, and the data is always up to date since it’s fetched on each page load.

Brad Pitt dancing from Burn After Reading

In case you’re wondering, we do still provide the option to sync your store the old way. To do this, you need to manually disable Lite sync and turn on a new setting called Sync posts. Doing this will sync your data as native WordPress posts, create the single pages like normal, and store all the data inside WordPress.

Migrating from v1 to v2

Migrating your site from v1 to v2 does require some consideration. We unfortunately had to make some breaking changes so it’s important to exercise caution before updating.

We’ve made a detailed migration guide that you’ll want to check out. Also, be sure to only update the plugin on a staging environment first to avoid any breaking changes leaking into your live site!

Benefits of using 2.0

There are many benefits of using ShopWP 2.0. The biggest ones are:

Less syncing issues
In 2.0, syncing is no longer a painful process and will not prevent you from using the plugin. Lite sync is turned on by default.

Always in sync
This is probably the most important update in 2.0. Many store owners simply need this as an absolute requirement if they plan to sell anything at all.

New features
We’ve packed 2.0 with a ton of new features, including product image zooming, infinite scrolling, product searching, cart notes, custom checkout attributes, and a whole new way of sorting / filtering your products called Storefront.

Faster, Faster, Faster!
We’ve refactored the way the overall UI operates and have improved things greatly. For example, this means no longer waiting for products to be added to the cart, or waiting for dropdown selections to “happen”. All of these interactions now occur immediately which will make your users much happier.

Moving forward

ShopWP way forward stock photo

There are many lessons we’ve learned over the last couple years of working on ShopWP. One of these is that we must provide more frequent updates. So starting in 2.0, we’ll now be pushing out weekly plugin updates that will contain smaller but less risky changes.

There are many lessons we’ve learned over the last couple years of working on ShopWP. One of these is that we must provide more frequent updates. So starting in 2.0, we’ll now be pushing out weekly plugin updates that will contain smaller but less risky changes.

Another lesson we’ve learned is that it’s important to cultivate the feedback of all of you. A few months ago we conducted our first poll of what features people would like to see in 2.0. This went fantastically, and we’ll be doing more of these.

We also want to make a point to provide better incorporation of native Shopify features into the plugin. For example things like providing customers as native WordPress users, analytics integrations, etc. Keep an eye out for more of these features later this year!

How to get it

If you’re using the free version of ShopWP, you can download the update directly from the WordPress repository. Or, you can upgrade the plugin like normal.

If you’re using Pro, you can find the latest .zip file within your ShopWP account. You can also update directly from within the plugins page as well.

** Important ** Be sure to read through our migration guide!