Last week, I wrote about my various WordPress sites, and how some level of inattention had resulted in one of them getting hacked. The sites have subsequently been given a lot more attention and are much more solid (amazing what a little IT time can do).
In any case, after I posted that article, I got a number of reader questions about WordPress, and in particular, confusion about the very different variations that are available to bloggers and developers. In this article, I'll help clear up the confusion.
Let's start with the very basics. WordPress is a blogging engine and content management system (CMS) that is used by small companies to very large institutions. It's the "largest self-hosting blogging tool in the world." WordPress (confusingly) is also a blog hosting service that Alexa ranks as the 23rd most popular site in the world.
Ugh. Okay, here's where it starts to get confusing. WordPress is an open source downloadable, installable chunk of code that you can put on a web server. WordPress is also an open source project (that manages that chunk of code). And WordPress is also a freemium-model blog hosting service.
They are kind of three different beasts. Well, actually four. I'll talk about the fourth closer to the end of this article. Is it any wonder why people tend to get confused?
At its most basic, WordPress is a PHP/MySQL-based application for managing content. It is software. When we talk about self-hosted WordPress, we're talking about that piece of software, although (just to be confusing), many hosting companies host the self-hosting software. More on that in a bit.
The development and distribution of that software is managed by the WordPress Foundation, which operates at WordPress.org. This is an open source project like many other open source projects. It has a corporate backer (a company called Automattic), but the project itself is a GNU-licensed nonprofit operation.
Finally, Automattic runs a hosted WordPress service called WordPress.com. You can set up free WordPress web sites on this. Automattic makes its money selling premium upgrades and VIP hosting to large organizations and major web sites.
The first differentiation worth making is understanding the WordPress.com service. WordPress.com is a freemium blogging service run by Automattic, the company that developed WordPress.
WordPress.com runs WordPress software, but there are limitations and benefits. Basically, when you run a site on WordPress.com, you're logging into a WordPress site, but you have only limited control. The folks at Automattic manage the network infrastructure and you don't have to worry about installing or tweaking the WordPress web application.
There's a price for this. You can only run certain themes offered by Automattic, and even if you pay a premium fee, you gain access to a few more themes, but only from those offered by Automattic. A theme is an add-on for WordPress that defines the look and feel of the web site. Think of it as a template or a "look."
If you don't want to pay anything, you can't use your domain name. This, too, is a premium upgrade. It's not terribly expensive, but there is an add-on fee.
From my point of view, the biggest limitation of WordPress.com is that you can't add your own plug-ins. Plug-ins dramatically change the features and function of WordPress and are, in my opinion, the key to the platform's power overall.
Here's an example. I'm working on an academic research project that involves the need to give quizzes to my students. There's a fine quiz plug-in for WordPress (the software), but it can't be run on a WordPress.com site.
If you want to run a hassle-free blog, but don't mind that you can't customize things much, and don't mind paying some upsell premium fees for certain services, WordPress.com might be for you.
If you want to tap into the power of plug-ins and themes, you probably want to run the PHP/MySQL-based self-hosted WordPress software. You can do this any number of ways.
You can get yourself a nice Linux server and just install everything yourself, or — at the other end of the spectrum — you can sign up to many of the services out there that host WordPress sites and set them up for you, but let you add themes and plug-ins.
Many hosting providers use CPanel or other easy install applications, so even if you're using a self-hosted WordPress, installing a new instance is a matter of choosing an option when you set up your hosting service.
In my opinion, this is the way to go. Costs can range all over the map, from basically free to thousands of dollars a month. The site that I let go fallow uses a number of expensive commercial plug-ins (it's a big site), so bringing everything up to date cost about a grand.
My monthly operating expenses are lower: about $40/month for hosting and I just added another $33/mo for ongoing automated management and monitoring, so I don't have another "Honey, there's porn on the site" call from my wife.
You can definitely host WordPress for less than I pay. I have legacy sites that, for fourteen years, provided a good living to a small company. We have something like 70,000 articles on those legacy sites, so paying forty bucks a month to keep the articles online is a relatively small price to pay.
Installing WordPress, even if you're doing it from the command line in Linux, is a pretty easy process. The WordPress installer automates a lot of the process, so you can generally have a web screen interface in just a few minutes.
The self-hosted WordPress software (which WordPress developers often refer to as "WordPress.org" software because that's where you download it from) operates in two modes: single site and network (or multi-site).
So, yeah. There's that.
Back in the day (before WordPress 3.0, if memory serves me correctly), the WordPress distribution actually came in two distinct downloads: basic WordPress and multi-site (or MU) WordPress.
Multi-site WordPress allowed you to set up a single WordPress install and run a bunch of sites under it. Think about a classroom, for example. Let's say you wanted to provide a set of plug-ins and themes to a class of students, but give each student his or her own site. Multi-site was built for just such a scenario.
Today, you can take the same distribution and use it either as single-site or multi-site, and instead of being called "multi-site" it's called Network, meaning for a network of sites in one installation.
There are benefits and gotchas to this. As I mentioned, it's great for spinning off related sites, one after another, for a large group of similar users.
But, on the other hand, many existing plug-ins and themes either outright don't work with multi-site WordPress or have never been tested with it. In particular, backup and site management plug-ins generally don't work with multi-site. So if you're going that way, you're going to need to be much more hands-on.
It's also rather difficult and tedious to move a site between regular single-site WordPress and multi-site, so you probably want to decide going in which is the better choice for you.
In summary, then, there are actually four WordPress variants:
Are you using WordPress? TalkBack below (and let me know if you want more WordPress-related articles).
By the way, I'm doing more updates on Twitter and Facebook than ever before. Be sure to follow me on Twitter at @DavidGewirtz and on Facebook at Facebook.com/DavidGewirtz.