It’s one of those things I always said that I’d never do: Learn to code WordPress themes.
I have always disliked WordPress as a CMS, simply because it isn’t one. It’s a blog platform, and I’ve always had the strong conviction that one should leave the “CMS’ing” to the tools meant to do the job, like Drupal or Umbraco. Lately though, I’ve become more and more convinced that there’s a CMS-future for WordPress in that the so called themes are becoming more and more advanced and complex, producing very well coded, easy-to-use and easy-to-manage web platforms.
There is however serious issues with putting functionality and presentation on the same layer.
Can’t change look-n-feel without breaking everything
As I just stated, themes are becoming more and more advanced and they not only provide an html base and some CSS – they contain functionality that enhances WordPress, sometimes even making it look and feel like a ‘real’ CMS. But there’s a problem with that; If you later on decide to change the presentation layer with a new theme that you’ve purchased or have had built, you’ll loose all of the kick-ass functionality you’ve grown accustomed to. Sometimes, even breaking the entire site as it is so dependant on those features.
In need of a proper framework
I know, there are some frameworks out there; but they all have a presentation layer associated with them, and I don’t want that – I want to make the entire front-end myself, damnit!
Perhaps I have missed something though – if there’s a framework with a page builder and shortcodes out there which does not have a presentation layer associated with it, give me a shout please.
Lack of user access control
This is kind of a biggie, because if it’s one thing you do not want to do, is give your client full editing capability from within WordPress. They would end up deleting the base style.css, erase the contents of functions.php or perhaps disable the child theme. No, you need to fine tune the controls for each user and user group. And yes, there are plugins for this, but that’s sort of my point too – it’s a plugin. Some stuff should just be built right in!
Other CMS systems just does it better
Like I said previously, WP is not a proper CMS system. It’s a blog platform. If you’re on the hunt for a proper CMS system and have no experience with anything, I’d go with Drupal (PHP) or Umbraco (.NET) – both are free of charge, have a vast network of developers attached to the project and plenty of documentation to go around. The learning curve however, is a lot steeper for both Drupal and Umbraco, than WordPress. The rewards though, in my opinion, far exceeds that initial learning curve.
All said and done…
WordPress, in spite of all it’s flaws – and there are many more than I’ve listed here – is a decent platform to build upon. And since so many of the new companies forming consist of people who have at some point seen WP, WP will continue to be a necessary tool for ‘creators of online’, like myself.