In a back to basics post, I want to answer the question “What is a theme?”.
I am very guilty of assuming everyone understands the WordPress concepts of themes, plugins, updates and all that jazz, so I am taking a step back and writing a series of posts to describe the building blocks upon which WordPress is built.
So What Is  A Theme?
In a nut shell it is the front end look and feel of your site. Â When a person visits your site they do not access the backend dashboard, all they see is the front end of your site and the content you have published.
The way people see your content, the layout, the typography, the colours, the logos, the banner ads, they all go to make up the theme.
It Is  A Layer Above Your Content
A number of people find it hard to grasp the idea that themes are independent of your content.  Themes sit above your posts, pages and comments.  Themes pull your content from a database and display it, they do not create or amend any of your data, it is purely a way to show your data to the outside world.  As we techies call it, a Presentation Layer.
If you change a theme, your content is still there, all you are changing is the look and feel, one of our clients was very concerned that if she changed her theme, her posts would need to be re-entered. Â This is not the case.
What Types Of Theme Are There?
I like to classify themes into four separate categories:
Free themes – there are hundreds of free themes available to download and install on your site, there is a free theme directory on the WordPress site at http://wordpress.org/extend/themes/.
Premium Themes – there are many companies out there developing premium, very professional themes to modify your look and feel.  Because these have been designed and coded to a more professional and higher standard than standard free themes, they have a charge associated with them.  This is usually in the range of $50-$100.  Some examples of premium themes developers are woothemes.com or themeforest.net
Theme Frameworks – the next step up is a theme framework, these are premium themes, but they are different from the category above in that the theme is not static, you can change the look and feel of your site to create a DIY custom theme. Â Examples of theme frameworks are Headway and Thesis. Â I use Headway on this site because of the ease with which I can create my own custom look and feel. Â These tend to cost $80-$200 depending upon the license version you buy.
Custom themes – the luxury end of the market is to get a custom theme designed for you.  This is the high end, and will cost you several thousand dollars, but you will get exactly what you want.  Custom theme design is a combination of excellent graphical design skills and custom coding skills to bring  your idea to life.
What Can My Theme Look Like?
The sky really is the limit, if you can design it, you can probably code it up as a theme.  Take a look at the home page of Headway they have a theme gallery of the implementations made with headway, they are all completely different, this is the point of a theme, it creates a layer of abstraction between your front end and your back end content data so it can be displayed in any way you like.
What Comprises A Theme
A theme is made up of a number of script files and CSS style sheets. Â They will also include custom images.
Typically there will be a script to display:
- Header
- Footer
- Home page
- individual blog posts
- individual pages
- Archives page; categories, archives or search results
Unless you are happy coding php script files, you probably want to leave theme files alone. Â The good new is there are thousands of themes out there pre-written to choose from, there are also many people providing WordPress technical support who are only too happy to help you install and amend your theme.
How Are Themes Delivered?
When you download a theme it will come as one zip file. Â This is a package inside of which will be stored all your script files, css files and images.
Installing A Theme
To install a theme you can either manually upload and activate the theme or use the theme upload function.
From your dashboard go to appearance -> themes and then click on install theme
You can also manually unpack the theme zip file and upload it to wp-content/themes/{themename}
Switching Themes
Once your theme is installed, you have the option to activate it. Â You can store many themes on your site at once, but there can only be one active at a time. Â You can switch between themes at will.
To activate or switch a theme again go to appearance-> themes where you will be displayed a list a available themes
You can also preview a theme before activating it.
Themes In A Nutshell
So that is your noobs guide to themes, this incredibly flexible way of displaying content on the front end of your site is one of the reason WordPress has gained such support and is used so widely.
If you have any theme questions I have not covered, please ask them in the comments section.