When WordPress Themes are Difficult

October 2016

When WordPress Themes are Difficult

One of the great things about WordPress is all the hundreds and hundreds of themes available for free or a very low cost. True, it won't be completely, uniquely yours but with a little work you can create a child theme and look like a custom.

But what happens when the (purchased) theme isn't awesome? Everything from spelling mistakes on the theme customize page to not following proper WordPress theme coding practices, here's some tips on how to fix the previous generation.

Unnecessary Customizations

It's cool that your theme has a subscription form. Thanks for that. But maybe my client uses MailChimp and you've given theme customizations for Constant Contact. Now I have this useless section. Yes, I can just ignore those settings but when I end up ignoring 4 or 5 sections, it makes the customization more complicated for my client. Use these ones here but ignore those ones there. You know they'll screw it up.

Or what's with being able to list 18 different social media icons but it's missing a field for the one your client *has* to have? There's got to be a better way.

Extra Plugins

Many themes either come with or recommend plugins to use. If you're not using all the original functionality you could be wasting load time with unnecessary code.

I think every WordPress developer has at one point cursed out plugins for slowing down a site or just breaking everything. Loading multiple versions of jquery used to be a real issue. Or, I once saw an update to a security plugin break the Advanced Custom Fields. Like, the admin side wysiwyg editor wouldn't even load. What does security even have to do with content?

To get around this, make backups of everything (code and database) and start disabling plugins. Once you find the plugin that's messing everything up you can look for an alternative or decide if it's necessary.

Just... Just Bad Code

WordPress provides theme development standards. While many are wp specific, so many of them are general good coding practice:

  • Stylesheet has !important everywhere? Make sure your child style sheet is loaded after and have even more !important.
  • Element styles (you don't want) defined by js or jquery? Use !important again.
  • Did you know a child theme can replace a PHP function of the parent? The child functions.php is loaded right before the parent's file.That means theme authors can make the user functions of their theme pluggable (that is, replaceable by a child theme) by declaring them conditionally. Oh, you didn't know that? So now I have to find every instance of that function call and change it in my child theme to my custom function.

Support

Before you select a theme, see if it proves support. It'd be nice if it were free support but even if you have to pay for a few months of hand holding, you'll be happier if you have any questions about settings.

Of course, the type of support and quick response time is important. Especially when the client wants to launch in 3 days. Skype translations, from a different time zone, don't always cut it.

WordPress Theme Support

How can you avoid these issues?

Google is your friend. Search for the author name, the author company, the theme name. Look for any public support boards and see what other users are asking. Look at response times and general attitude of the responses.

But sometimes that's the theme your client wants. You just have to grit your teeth and get through it. Prepare to use many profanities.