Marrying a static site to a blog

Aside from the new domain name, the main reason I embarked on the QuirksMode.org project was that my old sites were becoming a nightmare to maintain and a mess to navigate. Rigorous information restructuring solved these problems nicely, but now that I've added two blogs to my site the problem is returning. Besides, I'm having difficulties making Movable Type do what I want.

The larger part of QuirksMode.org consists of static HTML pages that I have to update manually; this is the system I'm used to, and for the most part it works fine. I don't need a CMS, I work faster in the HTML source code. To this static site I now added two (semi-)dynamic blogs. The Bug Report is supposed to remain a separate sub-site, and people should be able to use it without reference to QuirksMode.org in general.

Commenting on content pages

Some entries in the QuirksBlog are tightly related to static pages, though. Besides, when I'd installed the blogs I started wondering about ways and means of enabling comments on the static pages. I get a lot of mail, and a significant portion of this traffic would never have been written if people could leave comments on content pages.

I don't want to migrate my entire site to Movable Type. That would be far too much work, and besides a blogging system is not the right tool for this job. What I'd really need is a sort of CMS with commenting options. However, even if such a tool exists, I'm not sure if I'd use it, because I don't really want a CMS.

For the moment I solved this problem by using QuirksBlog for the comments. I added links to the four most recent additions to my site that point to the correct QuirksBlog entry, so that people can leave and read comments. I'm not sure if this is an ideal solution in the long run, but for the moment it'll serve the needs of my readers.

More generally, this problem illustrates the difficulties of marrying a static site to a blog. I'm sure I'm going to encounter more offshoots of this fundamental flaw as QuirksMode/QuirksBlog progresses, and right now I can't think of a fundamental solution.

The homepage

Another point that's bugging me is this site's homepage. It should contain the latest entries for both QuirksBlog and the Bug Report, apart from the table of contents of the static site. Although the current homepage fulfills all these functions, I've got one interaction problem and one technical problem.

Technical problem

On the homepage I want to present excerpts from both blogs. I'm not sure if Movable Type has a native function that does this, but even if it has I can't use it, because my homepage resides in the webroot, and not in the blog directories where Movable Type can generate files. The obvious solution to this problem is a bit of SSI magic: rename the homepage to home.shtml and <--#include --> the excerpts. This is the simplest solution, so I implemented it. I encountered two problems, though.

One problem is that every page in the static site has a static link pointing to home.html. I decided to change only the most important links (sitemap/navigation, logo, tables of content), and therwise to use a redirect on home.html to home.shtml.

The more serious problem is that it seems to be impossible to define extra templates in Movable Type—and I don't mean template modules, I mean actual self-contained templates that are filled with the correct content by the system.

For the homepage I need a simple HTML fragment from each blog, without <body> tags and other overhead because it's going to be included in a proper HTML page. To fill this HTML fragment with the correct data it needs to be a Movable Type template. What I really wanted was to define a separate template, named, for instance, "Excerpt", because the regular Movable Type templates are all meant for regular pages with specific functions I might need someday. However, as far as I can see I cannot define such extra templates.

Therefore I decided to sacrifice two normal templates that I currently don't use but might need in the future. I don't have an overall Archive page for the Bug Report, so I used it for the excerpts. QuirksBlog, however, does need an Archive page quite badly, so I decided to sacrifice the actual index page itself for the excerpts, and reasoned that the QuirksMode.org homepage is "really" also the QuirksBlog homepage. I don't doubt this patch is going to give me trouble later, though.

Therefore QuirksBlog doesn't have a normal index, and the Bug Report doesn't have a normal archive. I don't like it at all, but the system seems to have forced my hand. Or am I overlooking something?

Suggestions for solutions are welcome, but I'm not going to migrate to another system any time soon, because I just went through two migrations paths in two years. Solutions should stay within Movable Type parameters.

Interaction problem

The interaction problem is simple: the homepage has become rather full, and there is no way I can cram even more content into it. Although the excerpts themselves are present, I don't have enough space for a meta sidebar for QuirksBlog (categories, monthlies, recent comments), and without these links the homepage can't function as the index page for QuirksBlog.

Besides, eventually I'll want a QuickLinks functionality (which means a third blog), but right now I can't possibly add this information to the homepage. Add the standard navigation of QuirksMode.org to all this, and we've got a homepage that overflows with information and that cannot be created within the limits of QuirksMode's current design.

The solution is obvious: redesign the entire site. I'm certainly planning to, but I'm not sure how much time this is going to take, and meanwhile I can't fit all my information on the homepage.

A website is never finished.

This is the blog of Peter-Paul Koch, mobile platform strategist, consultant, and trainer. You can also follow him on Twitter.
Atom RSS

I’m around at the following conferences:

(Data from Lanyrd)

Categories:

Monthlies:

Comments

Comments are closed.

1 Posted by dave on 31 December 2004 | Permalink

Peter, take a look at Textpattern.

Just trying to read what you have been through with MT not letting you do things is painful to someone with a bit of txp experience.

Sounds like you would set up what you have now as separate blogs (what seems to be causing you grief) as separate "sections" in txp. These sections can be easily spliced together for the front-page, with control over the content to allow archives and comment specifics that you desire.

Also the txp users (textpattern forum) and the systems extensibility do not allow for the type of problems you have got now...any problems you will come across will be easily solved with a plug-in that the community just seem to magic up upon demand.

2 Posted by Christiaan Kras on 3 January 2005 | Permalink

No need to rename home.html to home.shtml. Just add a .htaccess with some rules that .html should be treated as SSI. It can also be configured in httpd.conf. I used the same thing for http://www.pcc-online.net/co. That site is full of SSI, but not one .shtml file ;).

3 Posted by ppk on 3 January 2005 | Permalink

And force the server to parse all 200 pages on this site while only one contains SSI? I think not.

4 Posted by drench on 3 January 2005 | Permalink

You can configure apache so it only turns parsing on for home.html like:

<Files home.html>
AddHandler server-parsed .html
</Files>