Building your template site is the hardest part of deploying a WordPress SaaS. This is because most plugins and themes are simply not ready to be deployed in an automated manner.
If you’re a plugin developer looking to build a WaaS then you have control over your plugin code and how it behaves when it is deployed in a WaaS environment. But you still might not have control over the other elements and plugins you might need for a full-fledged WP template site.
Here are some issues you will encounter when creating your template site:
- Licensing – how will licensing work on new domains for any plugins or themes that require it? Some plugins and themes will require activation on each new domain. Some will be happy just to have a license key in the wp-config.php file.
- How will you hide menu options that your customer should not have access to?
- Will you be allowing customers full wp-admin access? Or will you be creating a user with reduce privileges?
How you will resolve these issues with each plugin / theme is critical and will impact which plugins and themes you can include.
In this article we’ll help you address some of these questions. Let’s start with plugins…
Best SaaS Plugins
Here are some recommendations for (mostly) SaaS friendly plugins:
If you’re deploying a page builder with your template, use Beaver Builder. It is, by far, the most SaaS friendly builder. It’s not the prettiest but it is far more stable than most. Some SaaS-friendly features include:
- Built-in white label features including changing the name of the plugin
- Command line license activation with wp-cli
Admin Menu Editor Pro – indispensable for making sure that end customers don’t access menu options that are not needed. This is very useful if you will be providing your customer with a reduced-access login (something we strongly recommend).
UltraAdmin – used for theming the admin area to make it look less like WordPress. The author also publishes LegacyAdmin and MaterialAdmin; but UltraAdmin seemed to be more compatible and easier to manage CSS changes.
Fluent SMTP – needed to make sure that emails are sent from your customer sites.
Up & Comming
There are some relatively new plugins on the market that seem very suited for a WordPress SaaS. The most interesting one is UI Press. We tried this out when it was first released and found enough niggling bugs that it couldn’t be used. But, it looks like it has come a long way and we hope to use it shortly on a project.
Custom Plugin For Template Site(s)
Just about every template site will require a custom plugin. This plugin will handle:
- Changing terminology
- Installing custom data when a site is first deployed using the template
- Possibly adding to the default wp-admin dashboard or maybe completely removing it altogether
- Handling upgrades
- Perhaps an on-boarding screen if the customer needs to enter company or business data and/or choose a theme
If you’re a developer you might be able to handle some of this. If you’re a solution provider, you might have in-house staff or contractors to handle this.
However, a word of caution – if you’re just starting out and don’t know for sure if there is a market for your offer, keep this plugin simple. You don’t have to do everything right away.
And of course, as part of our offering, we help as much or as little as you need to create this (hence our one-time sign-up fee.)
Custom Plugin For Your SaaS Management Panel
Depending on the needs of your template sites, you might also need a custom plugin for your SaaS Management Panel.
For example, maybe you want to run a wp-cli command to activate or remove licenses immediately after a template site is deployed.
Or maybe you just want to run a search and replace to add the users company name and other data to place holders on the site.
You can do as much or as little as you need here.
But, as we mentioned above, if you’re testing the market, keep this simple – you can always automate more later.
Forking Plugins & Themes
In some cases you might find that it is better to just maintain your own version of 3rd party plugins and themes. In this case, you can use GIT to help merge your changes with the original author’s changes when they issue upgrades.
In our experience, there is very little work when merging your changes with most point releases. But you’ll have to do a lot more when there are major releases, sometimes completely redoing your changes.
And, of course, you’ll need to disable licensing and other automatic update mechanisms on those plugins to prevent it from being overwritten.
Note: If you disable a plugin or theme’s licensing, you should still pay the appropriate license fee to the plugin/theme publisher!
You will have to decide how much built-in site security you’d like to include in your template sites.
We’ll provide some basic traffic filtering using CloudFlare and Fail2Ban. Beyond that, your template sites will require any additional security you want to layer on. For example, do you want all your site admins to use 2FA when logging into their sites? If so, you’ll need to include a 2FA plugin in your template.
Do you want periodic Malware scans? If so, you should include that plugin in your template.
You’re going to want to think carefully about whether you want users to have access to backups.
If you’ve allowed users full admin access to the wp-admin area, then whether or not they have access to backups is likely irrelevant.
However, if you’re only giving them restricted access (which we strongly recommend) you do NOT want them to have direct access to backups – otherwise they’ll then have access to the database and be able to restore it on a different WP server with full admin rights for themselves.
You’ll also want to think about whether you will include a backup plugin. You can depend on our SaaS infrastructure for backups but we do recommend having multiple backup layers. We recommend three layers:
- A server image backup – usually triggered by your cloud server provider (Digital Ocean, Linode etc.) on a daily or weekly basis. This is the last line of defense for your customer sites.
- Our backups.
- A backup from a plugin.
Depending on how mission critical your customer sites will be you might get away with two backups. But we strongly recommend three.
Ok, that might all seem like a lot. But, in most cases, you can get a basic template site up and running in a week or less. After that you can tweak to your heart’s desire.
The above list gives you an idea of things to consider and think through as you create your templates. But you don’t have to do it all – just what is necessary and applicable for your customers.
And if you’re building an MVP or attempting to prove market fit, then you should do the least amount necessary and consider building a hybrid SaaS that includes white-glove services.
Request a Demo
Want to see OpenSaas.io in action? Request a demo - just pick a time from our calendar.