Will WordPress Work for Your Website?
Every now and then, a client specifically requests Wordpress as their new website's content management system. When this happens, the developer in me has to carefully consider whether it's the best option for them.
On the one hand, WordPress is an extremely user-friendly CMS with a vast array of free themes that can be customized to a variety of needs. But while Wordpress is great for a particular type of website, it starts to strain when the complexity of the site outgrows WordPress' abilities.
What Wordpress is Great At
Ease of Setup
WordPress is good at creating websites that contain simple pages—i.e., unstructured, blank canvas, WYSIWYG ("what you see is what you get") pages. Simple pages like these come standard with a Wordpress installation. Upgrading and installing WordPress is typically a one-click procedure. The ease of setup makes WordPress a great choice for those who don’t have a developer and don’t want to dig into any code.
WordPress has a large—and growing—directory of free and paid themes from which to choose, most of which can be easily customized with logos or colors from the theme settings.
Plug and Play
WordPress also has a whole directory of plugins and widgets that provide plenty of great functionality, like social sharing, contact forms, etc. Most of these widgets and plugins are easily installed and can be managed via the control panel.
What Wordpress is Not-So-Good At
Complex Content Structures
While WYSIWYG pages are flexible, they won’t be able to accommodate more complex templates that require structured content.
For example, let’s say you want a Frequently Asked Questions section. You want the questions listed, each with a “See the Answer” link/button that reveals the answer on the page. You also want the latest question and its answer to appear on the homepage.
In order to accomplish this, you would need a way to store the question and the answer in the CMS so that (1) they are linked to one another, and (2) you could pull the latest Question-Answer pair.
Because all of the content in WordPress is assumed to be either a Page or a Post, creating a Question-Answer content structure is impossible using WordPress' standard functionality. There are some third-party plugins for Wordpress that try to accommodate more complex, structured content types. While they make custom content types feasible within WordPress, they are less than ideal implementations because these third-party plugins are essentially overriding default functionality.
While WordPress is great for ready-made themes, it’s not as easy to implement a custom design. If you already have a design mocked up and ready to implement, coercing a WordPress theme to display in a specific way can be complicated because you have to override the default styling or work around the need for structured content types—which, as we previously discussed, is not one of WordPress’ strengths.
Controlling User Permissions
Let’s say you want to give your sales and marketing team access to the blog, but you don’t want them to be able to update the homepage. WordPress does not offer fine-tuned user roles out of the box. If you need more specific user permissions, you might want to look elsewhere.
Performance and Third-Party Conflicts
When you install a plugin in WordPress that is used on the site, it will include all of the scripts, styles, and other assets needed to make it work. If you look at the source code of a WordPress site, you’ll typically see a large number of assets—all of which are included to ensure that the intended functionality works without forcing you to jump into the code itself. This can lead to a duplication of assets or a conflict with another plugin used on the page.
WordPress does have third-party cache add-ons that attempt to alleviate these performance issues; however, this does not cut to the root of its performance problems.
So should you use Wordpress or not?
If you need a site up quickly where the only content types will be unstructured pages or posts—and you don’t have any specific design or functionality requirements outside of that—then WordPress might be an ideal solution. It’s particularly great for those who aren’t hiring a developer and aren’t planning on looking in the code.
If your site requires complex user permissions, has functionality or design requirements that can’t be accomplished by existing plugins or WYSIWYG pages, or if performance is a high priority, you might want to consider using another CMS.