I have site where we have made some changes to the SiteTemplate (which consists of the ONET.xml file and 2 .aspx files). We also had to update the site theme (CSS changes mostly) for some of the changes. We have packaged up all the changes in a .wsp package and deployed it, so that for future sites everything should be in order.
I know SharePoint 2007 doesn't propogate changes to existing sites, so I wrote a script that iterates the sites and replace the two .aspx-files (default.aspx is one) - that should be fine.
The way I updated the theme was to run:
SPWeb web = // ... get web ... web.ApplyTheme("none"); web.Update(); web.ApplyTheme("mytheme"); web.Update();
Visually it seems to do the trick, but I want to make sure that there's no old files that haven't been updated, so I'm asking you: Did I forget anything?