MT5 configuration across domains

Hi. I haven’t blogged in a few years. Good to see you all again.

I’ve just installed the brand-spanking-new Movable Type 5, to run seangleeson.com and feebeeglee.com. I shall be spending quite a bit of time creating style sheets and templates for our new family of blogs in the upcoming weeks, and blogging about any issues or insights which occur. Then, I will work on migrating the slumbering swell3d.com to this MT5 installation, and possibly even merging in our old WordPress blogs (at blog.gleeson.us, sean.gleeson.us, phoebe.gleeson.us, and homeschool.gleeson.us). I also want to start a Web development blog at mr.gleeson.us. So this is the first step of a long journey.

But here is something about MT5, which has caused problems right from the beginning: why the devil don’t they want me to have blogs on multiple domains? As recently as MT4, you could put a blog at one domain (like feebeeglee.com), and another at another domain (like seangleeson.com) and and have them aggregated at a third domain (like gleeson.us), the way I am doing. But the new MT5 has dispensed with this very helpful ability.

Now, blogs cannot stand alone; they have to be a part of a “website,” which acts as an aggregator and receptacle for non-blog content. That’s okay with me, but for some screwy reason, every “blog” must be a subdomain or directory of its “website” parent’s domain! For instance, if the “website” is at www.mysite.com, MT5 insists that its blogs must be at www.mysite.com/blog1/ and www.mysite.com/blog2/ (or — even worse — at blog1.www.mysite.com and blog2.www.mysite.com), but not simply at blog1.com and blog2.com.

Why can’t a blog have its own unique domain? There is certainly no technical reason for this restriction. I know this because I just spent a day hacking MT5’s Perl code to get it to work, and it caused no technical problems, it works like a dream.

The actual code hack didn’t take a whole day, in fact it’s just one extra line of code in the Blog.pm module in the MT lib.

sub site_url {
    my $blog = shift;
    # This next line is the one I added:
    return $blog->raw_site_url;
    ...

But before I did that, I spent an unfruitful day trying to write a plugin that would do the same thing. I don’t like hacking source code, because it makes updating so cumbersome. So a plugin would definitely have been the preferable solution. But when one attempt after another to modify the Blog object with a plugin failed, I finally gave up and just hacked away at the source. It felt good.

What I really hope is that the very next release of MT corrects this problem and allows cross-domain blogs. Because now I will have to hack every MT update until they fix it.

Permalink
Category:
Topic: ,

Leave a comment

(Thanks for reading all the way to the bottom.)

Sean Gleeson is an artist, developer, writer, teacher, statesman, and family man in Oklahoma City, Oklahoma.

See full profile.

Sean Gleeson Sean Gleeson