I made a child theme based on the WordPress twentytwelve theme (i.e., the WordPress 'twentytwelve' theme is its parent).
Some of the modification were done very simply by overriding style, using my own css properties and selectors in the child theme's style.css file (like different property values for the #page div, or whatever).
Other modifications were done by hooks, introducing my own functions in the child theme's functions.php file, and then calling them by placing code in the child theme's (initially duplicated) header.php, footer.php, or wherever. For instance, I added an extra div into each page by writing a new function in the child theme's functions.php which just echoes out the html, and then inserting the call to that function into the appropriate place in the child theme's copy of header.php.
Pretty straightforward stuff, I know. As something of a newbie I was extremely pleased with the results I got - the parent 'twentytwelve' theme was transformed by these child theme modifications into something that looked totally different, and it was just what I wanted. I feel like I could transform the twenty twelve theme into a variety of very different styles.
So far so good. But now I face the question of WordPress updates. When I update WordPress to a new version, or even just the 'twentytwelve' theme to a new version, the hooks (that I placed in my child theme's header.php or footer.php, or wherever) might not work, because the structure of the parent theme's code might radically alter. (I realise that much of it probably wouldn't actually alter, at least for a time, being basic stuff, but some day it might, or I might be tempted to modify code that may more easily become changed.)
So what do I do? I thought of making an exhaustive list of all the modifications I make. That way, when I need to update, I would have to go through each item on the list and check the new files to see whether or not it looks like my modifications would work as before. But that could be pretty time-consuming, and prone to error.
So is there a better way to make all these child theme modifications, and update WordPress core files and themes, without so much trouble?
I suppose I'm looking for some mechanism which makes it easier to check that the modification hooks still work in the child theme's header.php or footer.php, or wherever, when I update WordPress - or which save me from having to do such checks. That's if I have all this right of course!
I get the impression that the 'genesis' framework does this - have I got that right? If so, how does it do it? But why do I have to buy a theme? The modifications I made to WP's 'twentytwelve' theme work very well for me; if possible I'd like to stick with my modification of that theme. Could I use 'genesis' with the 'twentytwelve' theme?