A Theme is a collection of files that work together to produce a graphical front-end interface with an underlying unifying design for a site. A WordPress Theme modifies the way the site is displayed and designed, without modifying the underlying core programming of WordPress. While some associate a WordPress Theme with “skinning” your site with a design, a WordPress Theme contains programming code that influences the design, changing it with each generated page view based upon the programming with PHP, WordPress template tags, WordPress conditional tags, and CSS.
WordPress Theme in WordPress Codex Glossary
WordPress Themes provide control over the look and presentation of the material on your website. It’s commonly referred to as the front end styling of your WordPress site.
How a WordPress Theme Works
WordPress Themes are made up of template files, files containing the HTML, CSS, and programming code that generate each pageview of the site such as the front, single post pageview, category pageview, author pageview, etc. Inside the template files are PHP instructions including WordPress Template Tags, shortcut programming code to access WordPress functions, queries, and features.
When a user lands on a WordPress site, the WordPress Theme generates a pageview, the front-end view of that web page. WordPress generates the pageview with instructions to collect and display the data within the site’s design and programming instructions to the visitor. The visitor clicks a link on the site to another pageview, and WordPress acts upon the instructions in the Theme on how that web page should be generated and viewed.
For example, if someone lands on the front page of the site, the WordPress Theme may have instructions based upon the WordPress Theme and the Theme options and features to set the front page of the site to be static with a separate blog area. The visitor would see the content and design accordingly. If the visitor clicks on blog, they would see a web page featuring the most recent posts on the site. If they clicked category, they would see a list of posts within that category. Click an author byline and they would see a list of the posts by that author. Do a search and the search page of the WordPress Theme would be generated. No results in the search, the WordPress Theme may offer up options to help them find what they are looking for or alternative information.
This describes the basic functionality of a WordPress site with any WordPress Theme, but a Theme can do much more than that. Using customized CSS, and some programming, a site like a movie review site could display posts within a category or specific categories with a different design representing the movie genre featured in the posts. Programming could be added that calls in data from off the site with an API to generate chart or table data such as a census, statistics, or sales data.
Membership WordPress Themes help restrict information to members only beyond the core functionality of WordPress. Sales and catalog WordPress Themes have Page Templates included to feature their products in a more user-friendly structure with photos, product information, and prices. The customization options for WordPress Themes is unlimited and varied.
Protecting WordPress Themes with Child Themes
WordPress Themes are updated regularly as there are changes to WordPress, web standards, and coding practices, as well as when bugs are found and need fixing. When a WordPress Theme updates, the files are overwritten with new versions.
In WordPress, there are two ways to modify and customize a WordPress Theme. User modifications are typically done in the WordPress Administration Screens as set by the WordPress Theme such as changes to the header art, header title colors, background images and colors, link colors, layouts, etc.
Theme modifications are changes made by the user directly to the Theme’s code. When the Theme is updated, these changes are lost.
To protect a WordPress Theme and its modifications, Child Themes were developed by several WordPress designers and developers, with Ian Stewart of Theme Shaper and Justin Tadlock leading the call to include Child Themes in the core of WordPress.
Explained more in depth with the ClarkWP article, “WordPress Words – Child Theme,” prior to Child Themes, modifications were made to a Theme by the user and extensive notes had to be made regarding the changes so the modifications could be replaced when the Theme updated, requiring an extra burden of work on the user, website developer, and Theme designer and developer.
Finding WordPress Themes
The WordPress Theme Directory is the official site for WordPress. All of the themes have been reviewed to ensure they meet standards and are free for anyone to download. You can search the site by theme type and style, and even test out the theme page view elements through a demonstration feature. There are thousands free themes from the WordPress Theme Directory.
If you prefer to invest in paid or premium themes there are hundreds of Themes available from designers around the world. There is rarely any difference between a free and premium WordPress Theme except that most premium themes offer support services for a one-time or regular payment. Some Themes both paid and free have a huge following with fans participating in a forum or site to offer ongoing support and help.
WordPress Theme Resources
See the list below to learn more about WordPress Themes:
- Using WordPress Themes – WordPress Codex
- What is a WordPress Theme Framework? – WPBeginner
- Themes – WordPress Codex
- Theme Development – WordPress Codex
- Designing for WordPress: Complete Series & Downloads – Chris Coyier
- Why I Created a WordPress Theme Framework – Justin Tadlock
- How To Protect Your WordPress Theme Against Upgrades | ThemeShaper Ian Stewart
- The ThemeShaper WordPress Theme Tutorial: 2nd Edition | ThemeShaper
- How To Modify WordPress Themes The Smart Way | ThemeShaper
- Building Custom WordPress Theme – Web Designer Wall
- How to Create a WordPress Theme? – SiteGround
- How to Create a WordPress Child Theme (Video) – WPBeginner
- Using the Child Theme to Modify the Parent Behavior – Tuts-plus