I have built quite a number of wordpress sites and have worked frequently with the HTML5 reset theme.
My workflow has been to simply edit the files in the theme because I often use quite a bit of custom CSS, php and custom wp_query loops etc. In the end, the theme is really quite drastically different from the original HTML5 reset theme.
However, I am wondering if there is a particular reason I should be creating a child theme instead? I find that I am doing so much customization that to me, I only really use the HTML5 reset for its basic header, footer and html structure overall. I’m not entirely sure how I could really implement a child theme and manage enough customization.
Thus my question is â as a best practice, should I still be using a child theme and basically have so many of the same files overriding the parent that it’s not even really necessary?
To me, I can only see child themes as a way to customize the parent but still keep the majority of the look/function the same. Is this an inaccurate perception?
Many thanks in advance!
The base question is:
Do you intend to upgrade the HTML5 reset theme in the future, and if so, would you like your themes to inherit that functionality? If so, then a child theme is the way to go. If not, then constructing a new theme is the way to go. Personally, I avoid child themes unless the purpose is specifically to have substantially the same functionality as the parent theme, but with slight modifications.
I find myself in the same situation you’ve described – in that I create many themes, and what I have done is to create a solid “base” theme that I use as a starting point, then add to – just as you’ve described you do.
I’m not a fan of child themes because they add a bit of overhead. While I’m sure some will argue with me on this (php is handled on the server, and therefore the overhead is minimal), I hold fast to my position. WordPress is fantastic, but one of it’s vulnerabilities is the tendency for users to create what I call “bloat” – adding many plugins to a site, which adds code – code that is often written by unknown coders who’s security concerns and efficiency of coding could be questionable. Child themes contribute, albeit in a small way, to this code bloat. From the WordPress Codex “Instead, [the child theme’s functions.php file] is loaded in addition to the parentâs functions.php. (Specifically, it is loaded right before the parentâs file.) “ . And, if you look at the way styles are handled, you are importing the parent theme’s styles, then adding/overwriting with your own – which does not make for the smallest, most efficient css footprint (which will have an effect on download speeds).
So, to recap based on what YOU are doing: when you create a new theme, evaluate the primary reason to use a child theme – to capitalize on the functionality of the parent theme and to preserve upgradeability for your child theme through the parent theme. If you don’t need to preserve the ability to upgrade, your theme will be more efficient if you create a new theme instead of a child theme.