I’ve been thinking about making a static home page for Toshuo.com for quite a while. According to my site traffic logs, most of the visitors to this site are new visitors who come in through search engines as opposed to regular readers. I suspect that most people who stumble across this site have come looking for specific information, and probably aren’t interested in the majority of what I blog about. Not only that, but I wouldn’t be surprised if a large number of them weren’t really sure what a blog is.

So as not to bewilder the SE traffic, I decided to make a home page for the site that would have the things I’ve written that are the most useful to the most people possible. Those would be the javascript tools I’ve made, the posts useful to new EFL teachers, and the resources for people who are studying Chinese. After deciding what to do, I’ve spent quite a while trying to bend Word Press to my will and basically come up empty. WordPress will allow users to make a home.php file that will be loaded as a home page, but it’s completely useless since that new file will be read even when you directly load index.php. There result is that you can have a static home page, but then you can’t have a page that loads up your most recent posts like the home page does by default. There are even plug-ins for static home pages, but they all suffer the same weakness- you lose the “blog” page.

As far as I can tell, after scouring hundreds of forums and looking at the sites I read, the way most people handle this problem is by moving their entire blog into a sub-directory named something like blog, or news, or life. It’s a nice solution in theory, except that I have no intention of breaking all my permalinks and putting a superfluous word like “blog”, or “news”, or “life” into every last one of my URLs from now until I quit blogging.

What I really want, is to make a static home page, move my old home page to a page called http://toshuo.com/blog/ or something like that, and not have my post or category links change at all. Unfortunately, this simple thing seems to be beyond the abilities of WP. I even tried writing my own blog.php file that would do everything that index.php does now. Unfortunately, it didn’t work. WordPress has some functions in various default files that don’t work when called from elsewhere.

In the end, I beat WordPress by circumventing it completely. Apache checks for index.html before index.php. So, I just rolled my own home page. My new static home page is loaded at http://toshuo.com/, and my blog page is now http://toshuo.com/index.php. Take that WordPress!