What Is WordPress?
I was recently speaking with a web client about WordPress and he asked a fundamental question – what is WordPress. I’ve been developing sites with WordPress for a while now that I forgot about this basic, yet important, questions. So, let’s take a look at what WordPress is.
Let’s go back into ancient web history (like 10 years ago.) At this time all web pages were custom crafted to include both design elements – things like menus, graphics, colors and layout – and content. Every time you wanted to make a change to your page you had to go to the ‘webmaster’ or the person who could make this change for you. It didn’t matter is the change was something as simple as correcting a spelling mistake. The webmaster was all powerful and all changes had to go through that person.
Well, people soon grew tired of having go funnel every change through the webmaster and several solutions were offered to separate the content from the design. At first, these solutions were highly technical and didn’t always work well; however, over time these tools matured and there are several good CMS’s (or Content Management Systems) available today. WordPress is one of these CMS’s.
Interestingly enough, WordPress didn’t start out life as a CMS. It was – and still is – a blogging tool. Initially a key requirement of blogging tool was that it needed to allow anyone – not just the webmaster – enter blogging content. If you could use a word processor, you could add and edit your blog content in WordPress. As WordPress grew it added features beyond basic blogging. The result today is a robust system for developing and maintaining a blog or many other types of web sites.
So how does WordPress work? Let’s dive in!
WordPress has 4 main parts:
- Core
- Database
- Theme
- Plug-In’s
If you’re a technical person you know there are more parts, but these are the major pieces to any WordPress site. These four parts work together to generate the pages that are delivered to your web browser. Let’s look at how these parts work together. (This discussion is focused on hosted WordPress sites. WordPress offers a service to host a site for you, but that solution isn’t as flexible as having your own site so we’re not covering it here.)
WordPress Core
The WordPress core is the basic functionality that is maintained at wordpress.org. The core has undergone a number of revisions over time. As of October 2010 the current version of the WordPress core is 3.0.1. The core is written in php – a programming language that easily integrates with html, the language of web pages. The core contains much of the basic functions that get your content and deliver that content to your web browser. The core also contains the functionality for the WordPress administrative panels. It’s really not a good idea (nor is it really ever needed) to modify the core.
Database
OK, now that we have the core WordPress, where does WordPress go to get the data that’s supposed to be delivered to the browser? It goes to the database. Every WordPress installation has a database. A database is a collection of related information – like all your content – the text, the graphics that display in a page, the comments others leave for you and so on. The WordPress database is stored in a mysql database. Mysql is used because it’s a great open source (free to use) database that’s easily available on almost every web host. The WordPress core contains programming routines that get the correct data from mysql to format your pages. When you add new content, that content is stored in the mysql database. All this happens behind the scenes so you really don’t need to know much about how databases work. There’s no need to (and it’s generally a bad idea to) modify the WordPress database directly.
Theme
Now that we have the basic content the next step is to format it in the way you want. This is where the themecomes into play. A WordPress theme is a collection of files that gives your site the look and feel you want. There are millions of WordPress themes. Some of the themes are free and some of them are licensed.
Themes provide the basic look and feel of a site, but most people want to customize the theme to their needs. Fortunately themes are customizable. Some themes require you to dive deep under the hood and know html, CSS and php to do the customization. Other themes allow you to make many changes via simple administrative panel settings. For example the Tekpals site was developed with the Modularity theme from Graph Paper Press. As you can see from this demo, much of the basic theme functionality is present. However, we extensively modified the theme to give our site the look and feel we wanted. Tekpals has developed customized themes for very specialized applications; however, pre-built themes offer some significant cost savings.
Our experience is that most themes need a combination of customized settings and custom code to work the way you want. Tekpals is well versed in making these customizations for you.
Plug-In’s
The final piece to this puzzle are the plug-ins. A plug-in is custom code that can be added to WordPress to provide additional functionality. Many great (and some not so great) plug-ins are available. Many of these are free. One plug-in that comes with the standard WordPress distribution and we highly recommend is the Akismet plug-in. This plug-in catches spam disguised as a comment and quarantines it for your review. This way spammers won’t be able to clog up your blog with useless and distracting comments.
There are thousands of plug-in and we’re well versed on how to get them up and running and playing nicely together. We’re also able to develop a custom plug-in if you have a highly specialized need that can’t be solved with an available plug-in.
















