Wordpress Development

WordPress as a CMS

It was about last year that I realised most of the projects that I do required a content management system (CMS). This both a relief and frightening prospect all at the same time. How do I use modern CMS’s? Are they easy to modify, hack, template, etc? Will this actually make my life easier?

With these questions in mind, I began my hunt for a CMS to use for a re-design of one of my larger projects (Wrestling Addix).  I had dabbled with Drupal before, but I found it to be a little complicated.  I also was having a hard time with the Drupal terminology (nodes?  You mean pages right?).  I also explored the Joomla route, but it seemed like a little more than what I needed.  Eventually, I came to rest on WordPress.  I had been keeping a WordPress blog for years (Re-Cycled Air was formerly a blog about my [mis]adventures during my undergrad) so it seemed like the natural choice.

Once I had settled on WordPress, it was time to figure out how to make it a usable CMS.  First off, I needed a static front page.  That was easily handled by going to the settings and having my blog posts go into a different page.  After that, creating a theme was next.  No problem, WordPress is easily themed, or you can choose from a large assortment at the WordPress site.  From there, I need a few extra plugins to make things work.  Here’s what I use regularly.

  • Advertising Manager – Used to rotate ads on some of my clients sites.  Allows for extreme customisation and weighted ads.
  • Akismet – Blocking spam comments has never been easier.
  • All-in-One SEO Pack – Using this Search Engine Optimisation package allows site contributors to fill out the meta information without ever having to touch a piece of code.
  • BM Custom Login – This plugin allows you to skin the WordPress Login/Registration/Password Recovery page.  It’s a nice touch that clients just love.
  • Configure SMTP – For clients without an SMTP server, this works great because it allows you to easily use a GMail account for SMTP.
  • Disable WordPress Core Update – Nothing is worse then having a client constantly bug you about updating WordPress.  Luckily, with this plugin you can disable the update notification.
  • Event Calendar – A lot of sites like to have calendars.  This plugin makes it easy to place either a larger full page calendar or a calenar widget on your site.  Managing events is easy as well.
  • Exec-PHP – This plugin allows you to execute PHP scripts in your pages, posts, or widgets.  It’s really handy if you don’t want to make a plugin for something.
  • Favicon Manager – Every site needs a favicon.  This plugin allows you to easily change your favicon so it shows up in browsers and RSS feeds.
  • Google Analytics for WordPress – This will add google analytics functionality to your WordPress site.  It accomplishes the same thing as putting analytics code directly in the header, except you don’t have to edit the template by hand.
  • Maintenance Mode – In the event that you need to do some serious site maintenance, this plugin allows you to easily throw up a maintenance splash page.  Admins are still allowed to view the site and the backend.
  • Member Access – You can easily restrict parts of your site to registered users only.  I used it to lock out authorised users from an upload area.
  • Page Links To – This allows you to make pages links go to external or internal sources.
  • PageMash – With this you can visually reorder your menu.  Much easier that the cumbersome ‘enter a number’ system that’s included by default.
  • Simple Press Forum – An easy to use integrated forum for WordPress.  Why use PHPbb or Vbulletin when you can have this with single sign on with the click of a button?

If you have any other suggestions for good CMS plugins, please leave them in the comments for all to see.

By Jack Slingerland

Founder of Working and living in Raleigh, NC. I manage a team of software engineers and work in Python, Django, TypeScript, Node.js, React+Redux, Angular, and PHP. I enjoy hanging out with my wife and son, lifting weights, and advancing in my free time.