The developer community is a critical part of WooCommerce. Without you, we simply could not provide the rich ecosystem that we offer. With this in mind, we’re exploring how to improve the product creation and management experience within WooCommerce. This will unlock significant competitive advantages for developers and expand the value we all provide together. We want to offer a streamlined experience paired with comprehensive extensibility to support more use cases for WooCommerce.
We kicked off our exploration in a channel in the WooCommerce Community Slack, giving us a direct link between our product teams and developers. We collected feedback on the current experience and potential engineering challenges — mostly around extensibility and backward compatibility. Through this feedback loop, we learned quite a lot about your needs and better understood the direction we need to take. Our North Star will be extensibility: it needs to be a first-class citizen of any new feature released in WooCommerce core.
To be as transparent as possible about the work we’ll be doing and our North Star, we’d love to share the learnings of this feedback group. We hope that it will inspire you to consider providing your feedaback and help shape the future of the new experience.
The Current Experience
Easy to extend
No systematic approach
However, there’s no systematic approach to WooCommerce’s extensibility. Several community members pointed this out as a major downside of the current state of things. It’s reflected in the absence of guidelines to help developers make decisions, such as when to create a new product type or how to control the visibility of their extension’s elements.
Adapting to the blocks and React paradigm
We learned that adopting the block editor and React has been an uphill battle for many extension developers who participated in the conversations. The learning curve is very steep due to complexity and the lack of a standardized approach to flexibility. It can also be difficult to recruit React developers and justify the investment, as most extensions are PHP-based. Developers are interested to learn something new, but their time and resources are finite — maintaining and expanding a business is always going to be at the top of the list when deciding what to work on next.
WooCommerce is not “walking the talk”
The overall feedback we received is that extensibility has been overlooked in the latest features. This hurts our community’s trust, making it harder to help extension developers to commit to the new paradigm. The limited documentation available and the uncertainty around the long-term investment in modernizing WooCommerce and WordPress creates a challenging environment for developers.
Looking Into The Future
The biggest opportunities happen when our end users — our store owners — are able to grow their own business. By improving their experience, we can help free up more time for them to spend on expanding their businesses.
Our plan is not without risks. Yet we can take steps to mitigate some of them by keeping the following guidelines in mind:
- There has to be more transparency on the long-term direction and improvements for WooCommerce core.
- Walking the talk: in addition to excellent documentation and hands-on practical examples, we should release any significant improvement or new feature with three to five compatible extensions.
- In terms of documentation, starting with in-repo documentation is preferable, close to the code, then expanding on this as the code matures. It will also be important to share an explicit conversion guide from the hooks that are currently used to any updated recommendations.
Interacting with extension developers through informal discussions has been helpful for aligning our assumptions about the new product creation and management experience. For our next steps, we’ll continue gathering feedback. We’d love to have you join the discussion and help shape the future of WooCommerce. To join our feedback group, please fill out this brief survey.
As always, thank you for being an amazing part of our community!