Readers of this site who’ve been actually on the site in the past couple of days will perhaps have noticed a slight change in the air. A freshness — the gurgling of a metaphorical brook, the plaintive bleat of errant linkposts, scurrying from underfoot, a lick of paint here and there.
Readers of the site who choose to filter my writing through an RSS reader or email subscription will possibly also be aware of the newness, but through the slightly less enjoyable experience of multiple old posts reappearing as fresh content. My apologies for that.
Why leave Squarespace?
Why would I desert the platform that I’ve written in praise of so many times? I would still recommend Squarespace, and I have other sites on their service. Sure, I had a wish list of features that they were missing, some of which they have fulfilled. But overall, it’s the best way to start a small to medium sized, well-designed site in hardly any time.
In a classic case of “it’s not you, it’s me”, I came to realize that the service Squarespace provides, whilst excellent, was really not ideal for people like me. I won’t belabor it, but you can google “leaving squarespace” for plenty of other stories from people like me.
I think I’m probably amongst the foremost experts in the world in using hacky code to make the non-developer Squarespace service do things it’s not intended to. My post index solution, for example, is one of the many little workarounds that I concocted to allow me to do things that I can’t imagine why they disallowed in the first place. Things that most normal people wouldn’t think they needed, or if they did would cheerfully accept that it couldn’t be done.
I researched the heck out of every CMS I could find for months. You might be shocked (shocked, I say!) to hear this, but it was actually boring as hell. Suffice it to say that there are more ways to make a website than you could shake a whole bag of cats at.
In the end, Statamic won out.
- It’s self-hosted, which I like because it gives me ultimate control over everything. That’s what life is about, really, isn’t it? Getting control. I hated that whenever someone at Squarespace tripped over some code it would break all my little bits n bobs.
- It’s insanely customizable, but in a fun way: they have a templating language that lets you flip your content all over the place however you like it. I actually enjoyed putting my site together in a way that I never did hacking around in Drupal, Wordpress, or any other CMS I’ve worked with in the past.
- Despite the fact that it’s self-hosted, the guys who make it are really contactable, which you really want if you’re a nerd. Squarespace has amazingly great customer service, but if your knowledge level is above a certain level, this sometimes becomes a useless buffer between you and the developers who actually know what’s going on.
- It uses flat-files — markdown files, in fact — instead of a database. I’ve always loved the idea of this kind of CMS but good ones have only really started to appear in the past few years. The benefits are many: it’s faster, much easier to move content around, and gives you the ultimate amount of control over your words.
Statamic is great, and putting this site together has been a real blast.
I won’t get really in-depth about this here, but feel free to ask if you have any questions.
- Export Squarespace site to Wordpress XML format
- Use the exitwp tool to convert this to markdown files with YAML headers. This took multiple tries, editing errors and unwanted stuff out of the XML file and getting a little closer every time.
- Open all the markdown files at once in Textmate and batch find/replace things that didn’t make it over properly, like linkpost links, or footnotes.
- Pay for Statamic, download it and then upload and install to my shared server.
- Get my Squarespace domain name unlocked and transfer it to my own domain hosting provider.
- Edit the heck out of the default Statamic theme, Denali. There is a really basic theme available that provides an even more basic starting point, but this one let me jump ahead in a lot of places. Then I built on it pretty extensively. I’m using TypeKit for the fonts.
- Add in some of my own special sauce, like the reading time indicator and sharing icons. Create some other parts of the site like the archive, and the RSS feeds.
- Install searchpath.io.
- Install Mint for tracking site stats. Then installed the Mint plugin Feedback to track RSS feeds.
- Scrub through the content on the site and make sure it all looks OK and the markdown all rendered properly.
- Change my DNS servers to point crateofpenguins.com to the new site.
- Change my feedpress feed to point to the new RSS feed location.
- Edit my .htaccess file to point all possible legacy RSS feeds to the new ones.
That’s it! Thanks to all who helped me pick Statamic, offered advice on the design, and helped me solve problems I encountered along the way. I’ve enabled comments for this post at the permalink in case anyone has any questions about the technical details of the move.