A Closer Look – Links – Video
Make Your Themes Stand On Their Own
I’ve been slowly working on a new site that will feature blogs that cover different topics, from all kinds of different categories. The new site is not using the MU (multiple user) version of WordPress, and all of the different blogs are being installed, manually. Each of the different topics will have it’s own theme, which I’ll be customizing for the site, though. I’ve done quite a bit of work on themes and templates, in the past.
I recently had a chance to do some work on themes for a different site (a blog network), where all of the themes had been created or customized by somebody else. They wanted me to add some features to the themes that would help their site with “cross-pollination” for increased revenue, across their network. I realized, shortly after starting work on the themes, that there was absolutley no way that I could change things in them, without breaking “something”.
Their themes (most of them) had been customized to work on the domains that they were used on, and would not work correctly on any other domain. I’ve always used a live server to verify the changes that were made to the themes, so I uploaded all of them to a brand new WordPress installation, that would be used, just for the purpose of this job. I verified that I had all of the files that were dependent on each other, and any custom files that they had in the root directory that were created for their sites.
Four or five of the themes seemed to work, but the other 15 or 20 just wouldn’t fly.
A sugguestion for “anybody” that makes themes for “any” blog or CMS: DO NOT make them dependent on the domain that you’re building it for! Make them portable. Build them so you could take the theme directory, drop it into another domain, and it would just “work”. Include all of the files that are needed for everything in the theme or template within the theme directory. Do not hard code any HTML of PHP unless there is absolutely no other way.
If you do start hard coding any part of a template, document your changes and keep the records within the theme directory, so that the next person working on it will know what was done. It will also help “you”, in the future, if you need to change things back to the way they were.
Because of the way that the themes that I was asked to work on were built, I’m not going to be able to do it (unless I was given access to the live domain, itself…and I’m sure that won’t happen). The work and time that I would have to put into them would cost a whole lot more than what I would have to put into them. Regretably, I’ll have to pass it back to the original author, and also pass on the money that I could have made by doing this.
I would have loved to have pointed to specific domains and blog networks in this post, but I think that keeping “some” things private are more important.