So you have an idea for a WordPress plugin.
Maybe it came to you when another plugin didn’t quite meet expectations. Or maybe while you were struggling to find a plugin that does exactly what you want.
Well, we’ve been in the business of WordPress plugin development for quite some time now – both our products as well as for clients. And as you can guess, there’s a lot that goes on behind the scenes.
So, let’s go backstage into the development process of one of our newest plugin for WooCommerce – Product Catalog Manager. We’ll also cover the general WordPress plugin development process we follow for all our plugins.
And in the process, we hope to answer any questions you might have about the WordPress plugin development. Let’s dive in!
WordPress Plugin Development Uncovered
Stage 1 – Ideation
For the full picture, we have to start by giving you some background. If you’re not familiar with our company, first of all, Hi! And second of all, the thing to know about us is that we’ve worked with WooCommerce for a while now. We’re certified gold WooExperts (casually inserting a humble brag) with a sizeable repository of WooCommecrce plugins built over time like Customer Specific Pricing, Product Enquiry Pro.
All of our products are geared towards improving conversions on your WooCommerce shop. But for a while now our support team had been receiving inquiries for a lead generation/ marketing tool of sorts. Largely, for hiding product pricing from non-logged-in users.
But since there were existing plugins for this function on the WordPress repository, we just redirected them to one of them.
But then what made us decide to create our a plugin of our own?
Stage 2 – Validation
We had been aware for a while that lead generation is a desirable functionality for e-commerce business owners.
But based on our market research there were 3 to 4 existing plugins that already provided the same functionality. Hence, initially, we couldn’t justify devoting resources to developing a plugin in-house.
So when one of our existing customers needed this feature, usually someone using Customer Specific Pricing, we would recommend one of these plugins.
But then oddly, a chunk of these customers would return to us. Some with issues regarding compatibility, others with issues regarding inadequate support for the 3rd party plugins. And this started to become a recurring occurrence.
This led us to believe that there was a need for us to build a lead generation/marketing plugin for our customers. So they can have a better experience using all of our products and not have to go back and forth between plugins. It was also an added advantage that this plugin now nicely rounded out our Sales Booster Pack which has all our essential WooCommerce plugins. And customers could receive adequate support for all of them in one place.
We also toyed with the idea of releasing it as functionality for our Customer Specific Pricing plugin. But we didn’t want to limit this tool to only the customers that have purchased CSP. We wanted to add value for customers using any plugin from our WooCommerce range. So we decided to release it as a separate free plugin!
How can you validate your idea?
When creating a plugin of your own, validating your idea is the first step. here are some questions you can ask yourself:
- Is my idea unique?
There is a good chance it is not. But that doesn’t mean it needs to be dismissed. On the contrary, it tells you that there is a demand for such a solution in the market.
- How is my plugin different than others out there?
Define what sets you apart. If it’s not unique, how is your plugin making the existing solution better? How can you make improvements?
- If my idea is unique, is there a demand for this solution?
If nothing like your plugin exists on the market, make sure to run the idea by someone that is not close to the project. WordPress Forum or Groups are a good way to get genuine feedback.
- Does my plugin solve the customer’s problems sufficiently?
Is there a large enough customer pool for my plugin to make it profitable? What problems are people looking to solve? Do the features of my plugin solve these problems? Quora and Reddit are both good platforms to scope this out.
Stage 2 – Planning and Effort Estimation
A plugin’s primary features are decided based on a couple of things.
- The needs of the customer
- Analysis of the competitors
Other factors in play are updates to WooCommerce and recent market trends.
For Product Catalog Manager, we wanted it to essentially be a lead generation/marketing plugin for WooCommerce shops. The popular way to do this on e-commerce shops is to hide the price of items or the ‘add to cart’ button until the person creates an account and logs in. So that was to be the primary function of our plugin.
Product Catalog Manager was to be a simple plugin, so there were just a few primary functions we landed on for now:
- For non-logged-in users, it hides the product prices
- For non-logged-in users, it hides the add to cart button
- Users have the ability to sign in right from the page they are and access the product prices without being redirected.
- Users that are not registered could be redirected to a registration page
But before the plugin can be approved for development the team conducts an impact analysis and estimation of the efforts required.
We analyze the technical impact on our potential customers and their website. Will it slow down the website? Can we minimize the technical load of this plugin? Is there a more efficient way to do things?
Then there’s a rough estimate drawn up of the total number of the work hours required. Development, debugging, quality analysis, working on plugin compatibility, etc. are all taken into account. This step is even more important when it comes to bigger projects.
Once we had all of this squared away, our plugin was ready to go into development.
How to plan and estimate effort for your plugin?
Step 1: Understand your needs, identify potential roadblocks, and define your objectives. This is your discovery phase where you are clearly defining what will be required in terms of work to be done. Separate this work out in terms of modules, features or development tasks so as to keep better track of things
Step 2: Map every feature or development task to an estimated number of hours required. You should also have an idea of your developer’s hourly charges (On average it’s around $50/hr -$75/hr). Now, it’s just simple math to calculate your estimated timeline and total cost. You might find this article about the true cost of custom WordPress plugin development quite useful!
Stage 4 – Development
So, once Product Catalog Manager was approved for development, it was passed onto our WooCommerce plugin developers.
When we are developing paid plugins that are to go up on a marketplace, our development team does a thorough analysis of this marketplace.
The team goes through its complete documentation to check the standards and requirements. These form the base requirements for the plugin.
Since Product Catalog Manager was a free plugin that was only going up on our website, we already knew the regulations and standards we had to adhere to. We have a standard framework that we use when developing our plugins. And so our developers got to work right away!
Our developers focus on features sequentially. Taking up each development task or module and working on it in its entirety – both on the front end and the back end. And finally putting it together in one awesome plugin.
If a feature is being added into an existing plugin or if we’re customizing a plugin there’s a whole process. First, any issues found are fixed. Then our team makes any required improvements, for example, better compatibility. And then the focus is shifted to the feature in question.
Once the development work on Product Catalog Manager was finished it was checked for adherence to all development standards. And then it was sent in to do quality analysis.
Stage 5 – Testing and Perfecting
Quality analysis is done in stages. In the initial rounds of testing our analysts run the plugin through test cases. The plugin is tested for various use cases first automatically and then manually.
In each round of testing, any errors are reported back to the developer. The issues are fixed and the plugin is tested again.
Here’s a very simple use case for PCM – checking if the price is hidden for simple products as well as variable products.
Our analysts not only check for issues in the functionalities of the plugin. The plugin is also tested for compatibility with our other WooCommerce plugins or with older features if it’s an existing plugin.
Next, the plugin is tested to see if the UI/UX flows comfortably, and if the plugin is intuitive to use.
We sometimes Beta test for a few of our more complicated plugins. Since Product Catalog Manager is quite a simple plugin, that was not in the cards.
After the final rounds of testing, the analyst compiles the plugin’s release notes. These contain information about the plugin, compatibility details, and known issues if any.
We also create developer documentation that mentions hooks and filters. So the plugin can be customized if needed by the user.
How can you develop your plugin ?
If you understand WordPress plugin development and are DIYing it, we suggest you strictly abide by the plugin handbook. You also might find our article – perfecting the art of plugin development– a useful read.
But if you’re not familiar with plugin development, you definitely need to hire a WordPress developer. And one that knows what they’re doing. If you have an in-house team, that’s great. If not you can go one of two ways.
You can hire a freelance developer. But then you might have to hire someone separately for testing.
For an end-to-end solution, your best bet is hiring a WordPress development agency that specializes in white label plugin development. White label plugin development is when you outsource the plugin development work to an agency that delivers to you the finished product. Which you can then brand and sell. An agency like this can be a useful companion to have along on this journey. They can take care of all the technical work – from planning to development to testing. Meanwhile, you can focus on getting ready for the launch, marketing your plugin, setting up your landing pages. Hiring an agency also has the added benefit of maintenance services after launch as well as support.
Stage 6 – Getting Ready for Launch & Marketing our plugin
While our developers were busy developing the plugin and making sure it works, our marketing team was busy marketing our plugin. We had to let out customers know it was launching!
The team got in touch with some of the big influencers in WooCommerce and WordPress like BobWP, Kasa Reviews, LearnWoo to ask for their feedback on the plugin and ask them to review the plugin.
The landing page was created and set up, a demo video was created for the same, newsletters, email series were put into place.
And then it was showtime! It was Launch Day! And our plugin was finally out there!
Let me be honest with you, there is always a slight chance that even with all your efforts something could go wrong on launch day. It’s even happened to us! But if you have a pro developer team behind you, it gets fixed in no time. Luckily, with Product Catalog Manager, it went as smooth as butter.
Stage 7 – Beyond the Launch – Updates and Maintenance
When you put a WordPress plugin out into the world it is absolutely your responsibility to make sure the customers using it have the best experience. Regular maintenance and upkeep of your plugins is a non-negotiable part of the job. To make sure your plugin continues to run smoothly with newer versions of WordPress , themes , other plugins often used with your plugin is important for continued customer satisfaction. Our development team is always on top of it for all our plugins.
Product Catalog Manager has now been available to our customers for a while now, so our job now is to listen to our users about how we can make this plugin better. And already, we are bringing out a new feature update! Very soon users are going to have the ability to hide/show prices to specific customers, user roles, groups & manage the visibility of ‘Add to cart’ button for lead capturing purposes
The Road Ahead
If you have decided to embark on the journey that is WordPress Plugin Development you have some big decisions to make. And don’t worry, you’re gonna do great!
But if I have to leave you with one piece of advice it would be to get into this process ready to give your 100%. It’s not really as simple as it all seems, hope this article has given you some insight into all the things that go into the process. If you have any more questions or doubts do leave them down below, we would be happy to answer! If you have some wisdom to impart to first-timers that is welcome as well.
Other than that, just want to end this with good luck on your plugin development journey! 🙂