Themes are the skin, which give each website it’s unique branding, styles, and presentation. There are many ways to build a theme from using a framework, such has Genesis, to building with a starter such as _s to building a completely custom theme.
This library includes:
- Genesis – theming framework
- Labs – individual hands-on building projects
- Insights – quick tips, insights, and master tips
- Other Resources – external resources just for you
Hands-on Labs
Roll-up your sleeves and let’s build some code together.
Intent of the Theme
What is the intent of the theme? What purpose does it serve? How is it different from plugins? A theme’s intent is to prepare and render out the HTML, i.e. content presentation. It handles the process of building what is needed to head out to the browser. In contrast, plugins are meant for extending or changing behavior and functionality. Features such as custom post types, taxonomies, widgets, shortcodes, etc. all go into a plugin. Plugins may even have their specific template files; however, styling is still a theme responsibility.
Intent of HTML and its Markup
The intent of HTML is to provide structure and meaning for your content to be read by other software, such as browser, screen readers, and web crawlers. While humans can read content even when its not well-formed, software needs a set of strict rules in order to parse it and do its work. Software is not intuitive and cannot read your mind or intent. It needs to be structure and a set of well-formed, strict guidelines. HTML provides this for us.
Intent of Themes vs. Plugins
I use the word “intent” a lot, as I want you to think about and select what you are doing based upon the intent. In this episode, you will learn about the intent of a theme and plugin. Their intent is very different. Both of them are used to customize WordPress, which means in all websites that you build, you will build and configure solutions using both themes and plugins.
Insights & Quick Tips
Theming quick tips, master tips, and insights just for you.
Quality Code Tip: Views are for HTML – Not Your Business Logic
In today's quality code tip, you will learn about removing the HTML from your business logic and putting it into a view file. In programming, you want to separate out your code by its intent and purpose. Let's discuss the what, how, and why of view files. (Side note: I'm showing you the actual code on this website which is powered by Genesis.
Other Theming Resources
A collection of other awesome educational resources.
Building Themes from Scratch Using Underscores
Lynda offers a course from Morten Rand-Herriksen called Building Themes from Scratch Using Underscores.