Theme Development

Making the Perfect WordPress Theme: Maintenance, Compatibility, and Customer Care


In the previous part of this series, we reviewed what to avoid when making a WordPress theme. It is an important article because it's really easy to make those mistakes.

And in this article, we're going to go through the things we need to do after making our theme.

You should keep in mind that you must keep your theme up to date, make it compatible with popular WordPress plugins, and always provide excellent support for your customers.

Regularly Updating the Theme

Have you ever seen just a blank page after you installed a new WordPress theme? (I did, and it was truly depressing.) You can come across the famous white screen of death of WordPress when you install an old theme that is not compatible with the latest version of WordPress.

To avoid this awful issue for your customers, as a theme developer you need to constantly check your theme with the latest versions of WordPress. To check your theme in detail, you need to experiment with the newest features that new WordPress versions include.

While doing that, you should enable WP_DEBUG and run the Theme Check plugin to make sure that there are no errors or warnings with the new version.

If there's anything that you should fix, do it immediately, and release the update as soon as you can. Users of the theme may not want to wait for an update and move on to another theme with a bad impression about you or your business.

Offering Compatibility for Plugins

Surely, there's no way of supporting every single WordPress plugin out there, but it is a plus for your theme to be compatible with some of the most popular plugins.

In this section, we're going to see the three big plugins that theme developers like to support in their themes, and how to support them in yours.


WooCommerce is probably the most popular e-commerce plugin built on WordPress. This free plugin has its own extensions (most of them are paid, some of them are free) and they can handle different payment gateways, shipping methods or even navigation types.

It has its own premium themes (created by WooThemes) but the plugin is coded in a way that every theme developer can make their themes compatible with it.

Making your theme compatible with WooCommerce is quite straightforward, actually - The 'Theming' category of the WooCommerce documentation has only eight articles:

The simplest installation may be enough sometimes:

  • Copy your theme's page.php file and rename it woocommerce.php.
  • Remove the Loop and replace with <?php woocommerce_content(); ?>
  • That's it, you're good to go!

If that's not enough, and there's a pretty good chance that it will not be enough, you can always go deeper: Create a folder named woocommerce and place all the files you want inside the plugin's woocommerce/templates folder (which are listed here). This way, you can edit whatever you want for WooCommerce.

When you're happy with the results, go to your theme's functions.php file and add add_theme_support( 'woocommerce' ); as a separate line.


BuddyPress is a well-known social networking plugin for WordPress. In its creators' own words:

it takes your powered site beyond the blog with social-network features like user profiles, activity streams, user groups, and more.

The good news about BuddyPress is, it's probably already compatible with your theme, out of the box! BuddyPress v1.7+ uses your theme's page.php file to work on its own, but if you'd like to include your own BuddyPress files, the process is just like with the WooCommerce integration:

  • Inside the plugin, copy the contents of the /bp-templates/bp-legacy/buddypress/ folder to your theme's community or buddypress folder.
  • If you want to use a different design than what your theme's page.php file has, duplicate that file and rename it to community.php or buddypress.php. Edit the file you created to change the design of your BuddyPress pages.
  • If you want to override the default CSS files of BuddyPress, simply create a css folder in your theme root, copy the buddypress.css and buddypress-rtl.css files into it, and edit them as you like.

If you're stuck, head over to the BuddyPress Codex. It has a very extended documentation that will help you.


WPML is one of the most popular multilingual plugins for WordPress. While it doesn't have a "free" version (Bummer!), it provides some very crucial features when you pay for it.

Making your theme compatible with WPML is probably much simpler than the other two. ( has an extensive tutorial on this but I think we can call that a "website translation tutorial".) There are just two important points for your theme:

  • Make your theme ready for translations (help and more info here).
  • Put a wpml-config.xml file inside your theme's root directory.

After making your theme translation-ready, find the sample wpml-config file on this page and you can edit it for your theme. You can also check the same page to see how you can edit the file.

After editing the file and placing it in your theme root, you can test how you did by visiting this page and downloading the plugin named "WPML Compatibility Testing Tool". After that, congratulations, your theme is now WPML compatible!

The Ways of Providing Customer Care

No one with a sensible mind would argue against the importance of "taking care of the people who buy your stuff", and that's why I'm not going to take your time to tell you how crucial this is.

Instead, let's go over our options to provide support for our customers:

Answering Customer Requests With a Public Forum

Like the forums of and ThemeForest, every download center and marketplace has a support forum to connect customers with theme developers. This is one of the first places that your customers will seek help, but since they're extremely crowded (and not just with your customers), both you and your customers could find it hard to communicate with each other there.

It's always a wise choice to keep an eye on those forums, but you know what would be better? Providing support from your own website!

A Complete Package for Excellent Customer Support

This will definitely take your time before going live, but it will definitely be worth it to provide a professional looking, extensive support section in your website.

While marketplaces' support forums provide a simple place for discussions and feedback, having your own support system can have more features like:

  • Forums
  • A blog to publish news from your business
  • A knowledge base
  • An FAQ section
  • Online documentation for each of your themes
  • Direct contact information

...and more - since this is your own website, the sky is the limit. And rest assured that your customers will definitely love it!

Wrapping Up

In this article, we discussed how we can maintain our themes, how to make our themes compatible with some popular plugins and how to provide excellent customer care.

If you have anything to add, please share your thoughts by commenting below. And if you liked the post, don't forget to share it with your developer friends!

Related Posts
  • Code
    Introduction to WordPress App ThemesApp theme 400
    With the increasing growth rate of WordPress powered websites, the need for WordPress themes is rising. Multi-purpose themes are becoming highly popular among website owners. Many existing themes are built mainly to address blog functionality. But with the growth of WordPress web application development, we are in need of specialized themes for different purposes. These themes are known as app themes. In this article, we going to familiarize with the concept of app themes and their usage in real world.Read More…
  • Code
    Choosing the Right Plugin for Your Next WordPress ProjectPlugin icon 400
    Ever needed a plugin for your WordPress-based website? Of course! After all, that's how WordPress is extended, isn't it? If you're a beginner to WordPress, or even a power user, then you're likely familiar with the WordPress plugin repository, premium plugins, and so on. The thing is, there are so many plugins available that do many of the same things, it can be difficult to determine which is best suited for your particular needs. This raises the question: What do you do to find the perfect plugin for a particular need? In this post, we're going to see how to find the best plugin for exactly that.Read More…
  • Code
    5 Quick Beginner-Friendly CSS Customizations That Make Your Blog Stand OutCssblog
    In this tutorial, we'll cover how to do five quick CSS customizations that make your blog stand out. Even if you don't know what CSS is, you'll be able to follow the instructions and change the standard look of your theme.Read More…
  • Code
    Theme Development
    Creating a WordPress Theme From Static HTML: Releasing Your ThemeCreating wordpress theme from html 400
    If you've been following this series you now have a working WordPress theme. Your theme has a number of template files, including a page template and an archive template, and also has featured image support.Read More…
  • Code
    An Introduction to Theming WooCommerce for WordPressWoocommerce
    WooCommerce is a popular eCommerce platform for WordPress that is being rapidly developed by WooThemes. In this article, I'm going to guide you through the fundamentals of theming for WooCommerce.Read More…
  • Code
    Theme Development
    Making the Perfect WordPress Theme: Wrapping Everything UpWp white 400
    Welcome to the end of the series! As we have done with other series, I find it useful to bring it all together and summarize the articles in one last post. So in this post, we're going to do exactly that.Read More…