When you are coding a new WordPress theme, you have few different starting paths you could take. You could start coding your design immediately from scratch, or you could just use a starter theme that has the basics to get you going.
My preference is to use a starter theme because it includes all the essentials so you have much less to worry about. If youâ€™re trying to learn WordPress inside and out, then starting a theme from scratch is not a bad idea. But if you are limited on time â€” and unfortunately thatâ€™s the case for most us â€” then give one of the starter themes below a shot.
All starter themes below are coded in valid HTML5 and tend to follow WordPress standards and coding conventions well. Although there are many WordPress starter themes, Iâ€™m only going to show you the ones Iâ€™ve used before and had a good experience with.
In addition to starter themes, there are also WordPress theme frameworks, which are much more feature-heavy and give you the ability to drastically boost your themeâ€™s features and capabilities. The problem with frameworks is that they usually have a bit of a learning curve so weâ€™ll leave that for a future article.
One distinct and awesome feature Underscores offers is the ability to generate a custom zip for you named whatever you want. That means if youâ€™re designing a WordPress theme for client XYZ, you can generate an XYZ theme and all files will be named appropriately.
The Underscores theme was coded by the Automattic crew, which if you donâ€™t know are the same developers that created WordPress, Akismet, and Gravatar. All wonderful products.
Useful features that come with the Underscores theme:
- Coded in lean and well-documented HTML5
- 404 Template
- Custom header implementation available
- Custom template tags
- Mobile navigation ready
- Organized CSS file to start with
Itâ€™s hard to believe Handcrafted was first released in 2010 seeing as how it remains a very capable starter theme even by todayâ€™s standards. This was the first starter theme I started using and if I had never discovered Underscores, I would still be using it to this day. Handcrafted was developed by WordPress designer and developer Randy Jensen.
Handcrafted is not as thorough or feature-rich as Underscores, but it gets the job done. It is especially useful for rookies who are just getting into WordPress theme development. It has just enough features to get you started quickly without confusing you or forcing you to learn new methods of doing things.
Useful features that come with the Handcrafted theme:
- Uses HTML5 markup with HTML5Doctorâ€™s reset styles
- IE-ready with conditional tags
- 3 navigation menu locations available already
- Optimized asynchronous Google Analytics script
- Custom post types ready to go
Roots is perhaps the most feature-packed starter theme of the three showcased in this article. It includes HTML5 Boilerplate, Bootstrap, and Grunt. This is THE starter theme if youâ€™re developing a serious WordPress theme and one that youâ€™re not in a rush to release.
One distinct feature that Roots has is the ability to rewrite all of your static theme URLs so that you do not have to use â€œ/wp-content/â€ in the URLs. The main advantage to that is you will have cleaner looking URLs and theyâ€™ll be relative instead of absolute.
As you can see from the screenshots, Roots is the only themeÂ where you can pretty much use it without making any design changes. Granted it will look overly simplistic and plain, but it wonâ€™t look broken and non-styled. But seeing as weâ€™re talking about starter themes which are meant to be styled and designed, itâ€™s not much of a con for the other two themes.
Useful features that come with Roots theme:
- HTML5 Boilerplate with jQuery, Google Analytics, and custom .htaccess file
- Cleaner HTML output of navigation menus
- Rewritten search URL query such as â€œ/search/queryâ€
- Image captions that utilize â€œfigureâ€ and â€œfigcaptionâ€ tags
- Multilingual ready
My final suggestion is that if you want to code a WordPress theme for yourself or your client, then a starter theme is the way to go. There are a few exceptions where starting from scratch or using a pre-built theme might be a good idea.
Have you ever used a starter theme? If so, which one and what do you think about it? Let us know what you think in the comments.