I’m just testing all the little pieces of Feld Thoughts to make sure that our upgrade to Movable Type 4.0 worked properly. So far I’m very pleased with the upgrade – the UI of MT is 31,415x better.
Those last two posts could have been subtitled “Vacation makes me verbose.” I guess limiting myself to 140 characters is what my Twitter account is for.
In general, Movable Type has worked great for me across the various blogs I maintain although I periodically fantasize about switching to WordPress. However, during an upgrade along the way, we accidentally switched the name mapping from text to numbers. We figured out a hack for this, but Ross (my IT guy) finally sat down and figured out the correct solution. The following is the best approach we could figure out for anyone that wants to figure out how to “remap MT URLs.” If you are not an MT nerd, please punt on this post. Oh, and if you subscribe via RSS and got duplicate updates for all the recent posts this is why – since the URL’s changed the feed got updated (sorry about that.)
A while back Brad asked me about changing the way Movable Type generates the permalinks and category pages. Somehow when we migrated from one server to another we changed the way we generated the URLs. Rather than the URLs being the nice pretty version of the post (where it’s based on the name of the post) we ended up using a numbering system. Brad noticed this and did a little research on how to change it. He quickly passed it off to me so I could figure out how to make this change to get us to the nice pretty URLs we’re using now. Since it took me a while to get this all figured out I figured I’d share what I went through.
Apache Redirection (mod_rewrite)
One of the first things we realized was that we would have to keep the old pages in some way so that all the information indexed by the search engines would still work. We couldn’t just dump all the old pages and go with the new ones otherwise all the old links (from search engines as well as from other bloggers) would break. The best way to achieve this is to use mod_rewrite. I won’t take the time to go into Apache mod_rewrite here, there are plenty of resources on the net for that. Once I had it up and running (it’s included by default in SuSE) I had to generate the mappings for the old pages to the new ones. This is what took so long.
Permalinks in Movable Type
When I started looking into this I found lots of sites with information on how to generate a file that would build all the redirection for me (details below). You could create a small template that would generate both the ID for the post and the long name for the post. I worked with this for days off and on and kept running into the same problem – the long URLs didn’t match what Movable Type was really generating in the end making this worthless. Since Brad has over 1500 posts there was no way for me to do this manually, it had to be automated.
This morning I hit my eureka moment – I need to change the way the pages were being generated by Movable Type. Then and only then would my redirection file create the right URL’s for me. In Movable Type I went to Settings – Publish and changed the Archive Types to their defaults (the first selection in the drop down list). Remember we’d custom created these at some point (I’m not sure why, when, or how.) Once these were set correctly Movable Type knew how to generate all the proper URLs
Creating the Redirection Template
The next step was to create a simple template to do the mapping for me. I’d found some examples out there and after playing with it for a while I settled on the template below. To create this template click on “Templates” then “Create New Index Template”. Name it whatever you want (I used migrate.html) and paste in the code below. Save and rebuild the template then hit migrate.html to see your results. If everything worked correctly you should see the mappings in your browser. Don’t forget to update the path at the beginning of the statement below to match the path for your site, as it will most likely differ.
<MTEntries sort_order=”ascend”> redirect /blog/archives/<$MTEntryID pad=”1″$>.html <$MTEntryPermalink archive_type=”Individual”$><br> </MTEntries> |
In the redirection statement you want the “old” or missing page to be first and the new, correct one second. Notice that the second one is the full URL including the domain (you’ll see this in your generated output.) Next you’ll need to use the output to create your .htaccess file. Create the .htaccess file at the root of your website (or root of your blog.) All you should have to do is copy the contents of the template above (the generated template) into this .htaccess file and do some testing. For Brad’s site I removed all the old archive files first so I would be certain that I was getting the new pages not the old ones, confirming that the redirection was working properly.
Final Thoughts
I have a few obvious pieces of final advice. BACK UP YOUR SITE FIRST. Yes, yes, this is obvious, or should be but don’t be lazy with this step. My backups saved me at least three times during this process. Second test like crazy. This site has over 1500 articles so I can’t test them all but I tested a big sampling of pages to be sure I got it all right. If you find something that isn’t working as you think it should, please feel free to email me and let me know.
Shortly after reading an article in the NY Times this morning by Bob Morris titled Global Yawning I received the following email from a reader of this blog:
I’ve noticed that I am skipping your blog posts with increasing frequency. The reason is that the “What a great team! What a great product!” posts about your portfolio companies seem to be an increasing proportion of the total (it may not be true – I haven’t run the numbers – but “perception is reality” anyway). At this point you may write a post that says that Newsgator is a crappy company but all I will see is “Newsgator” and I will move on. As an entrepreneur, I would love to have such a dedicated, high-profile investor-evangelist. However, as a reader I feel that the “advertorial” content is starting to chip away at the foundation of your otherwise excellent blog.
Well said my friend (and thanks for the constructive criticism.) It’s often difficult (at least for me) to walk the “fanboy line.” I always try to say something useful / educational when I’m cheering on my companies, but I’ll always acknowledge that I’m also promoting them.
The juxtaposition to Global Yawning hit me over the head. Morris has an excellent essay with the killer quotes “How much green-standing can we stand? It’s enough hot air to melt Antarctica. In no time, an inconvenient truth has become an obnoxious one.”
I’m a huge environmentalist. I have a conservation easement on all of my land in Colorado. I’m on the board of the Colorado Conservation Trust and am actively involved in helping conserve land. I was “green” well before green was in.
But I’m now lost in noise and can barely read anything about global warming right now without my inner cynic coming out. It baffles me that people fly across the country in private planes to prostelitize about being carbon neutral. Morris points out some new problems with ethanol (more smog than gasoline) and mercury in the newfangled compact fluorescent light bulbs that create a different environmental problem. Magazines increase their difficult to recycle page count with endless articles on how to be more green while advertising products that are most definitely not environmentally friendly.
I haven’t spent the time to separate fact from fiction – nor am I going to – but the dynamic is overwhelming to me. When the noise overwhelms the signal, it’s time to take a giant step backward and look at what is going on.
I’ll keep being a fanboy for things I care about, but I’ll be more conscious about telling a story while I’m doing it.
I got back to my hotel room after a long and enjoyable day – my first day back from a glorious week off – and did a quick Techmeme check before watching 24. The top item was a long, graphic, and upsetting story from Kathy Sierra.
I don’t know Kathy, but I think her blog is great and it almost always prompts me to think of something new. Scoble summarized my feelings well in his post – “I’m physically ill after reading what happened to Kathy Sierra.”
I’m pretty numb to many things – especially in the context of blogging. The endless porn spam and trackbacks that I get don’t even mean anything to me any more. The occasional nastigrams are fine and even cause me to pause and rethink my position. I’ve managed to sidestep a bunch of potential flame wars, mostly because I find the escalation to be boring.
Until recently I didn’t think much about the difference between an anonymous comment and one where the person identified themselves. I’ve been spending a lot of time recently thinking about reputation and trust, especially given the geometric growth in user-generated content.
Kathy’s story sealed it for me – reputation and trust are at a tipping point and are an issue that is going to have to be dealt with in 2007. However, if you want to get a feel for the real issue, you have to read down to comments from “Joey” on 3/26/07 at 8:49pm. Follow the thread from there and you’ll see the second order effect of anonymity.
I’m sad that Kathy is experiencing this. It’s disgusting that someone is hiding behind an anonymous identity while issuing this type of attack. For a while, lots of smart folks have been saying that these are things we are going to have to solve in this medium.
I received a great Walt Whitman quote from a friend named Allison today: “Re-examine what you’ve been told. Dismiss what insults your soul.” While this activity insults my soul, I’m not going to dismiss it. I am going to re-examine it, especially the part about the need to deal with this issue broadly across the Internet infrastructure.
Given that it’s getting a little cooler out and I’ve been wearing more long sleeve t-shirts, I decided to update the look and feel of my blog. My friend Kevin Menzie – the CEO of Slice of Lime – who has been doing some amazing work for a number of our portfolio companies – did much of the work.
We’re still shaking out a few things, so be patient if you notice a problem. I’m interested in any feedback – good or bad – as I’ve got a new blog in the works with a similar look and feel. Please comment freely on my new wardrobe. Of course, if you run into any bugs, please tell me.
Anil Dash – who I only know through his blog – has an awesome post up this morning titled “Making Something Meaningful.” If you are a blogger, it’s definitely worth reading.
I got the following email from service@cinemanow.com today.
Brad,
Thanks for posting comments regarding CinemaNow on https://www.feld.com/archives/2006/03/cinemanow_is_ou.html.
With regards to the comments about pricing/Netflix towards the end of the review; just wanted to take the time to let you know that we are working as hard as we can to provide our customers with the best experience possible. We are working to try to convince the studios that there IS a market out there for this kind of consumption of video, but ultimately they own the rights to their libraries, and dictate how/when/where/why regarding the distribution of their titles. Your review, and the comments of more consumers helps us greatly in this cause!
I’d like to provide you with a couple of coupon codes for you and/or your IT guy Ross to use towards your next rental on our website for taking the time to review us so extensively.
…
Impressive. Of course, I forwarded the coupons to Ross.
We did a brainjam at our office today with about 30 people. Five minute overviews of what you are up to (plenty of real time demos) and then active discussion. It was a fun and intellectually vigorous day – plenty of stuff you’d expect along with a couple of bizarrely intriguing things. Near then end of the brainjam, Jim Turner tossed up the site for his “business blogging conference cruise.” I hate boats so I won’t be joining him, but if you like cruising and blogging take a look.