some nuts and bolts of an author website

It’s pretty common for people to talk about their writing process, but you don’t often hear how people build their websites. Maybe because a lot of the people with the big megaphones don’t do it themselves? (This isn’t a knock on people with big megaphones; if I had the cash to outsource, I would.) Anyway, there have been some changes here in the past couple of days, and I thought some of the technical stuff might be of general interest. More importantly, I want to write down what I did so I can reference it later.

NB: I’m still a pathetic n00b at WordPress, but I am just comfortable enough with HTML, CSS, and PHP to make minor modifications (heavily commented so I know where they are). All alterations are perpetrated on a child theme.


As I write, the theme you’re looking at is the Quality theme. It’s more or less the look I wanted, but I made a few tweaks to the code in the Editor (Appearance -> Editor on your dashboard). The big change was to page.php, removing the title, featured image, date, and comments from my pages so they’d look less like blog posts. (Looking at it, I think I’m going to remove the title on the blog page as well, if I remember.)

I also made some changes to style.css, changing from the theme’s default salmon to a navy blue. This exposed a couple of interesting facts about Quality and WordPress. First, I discovered that Quality has a bunch of CSS in files that aren’t exposed to the Editor because they’re in a css subdirectory within the theme; the source code links to them, but I can’t edit them in the WordPress interface. So I spent a bit of fun time re-familiarizing myself with Site5’s file manager — which actually has a code editor with pretty decent syntax highlighting.

But this all didn’t seem to have any obvious effect on the appearance of the salmon text. So my second discovery was browser caching and WordPress. I don’t pretend to understand the issue deeply, but I do pretend that when I cleared the browser cache, the changes showed up very nicely.

Enabling file downloads

One of the things I’ve been meaning to do for donkeys’ years is set up a list bribe — specifically, a free download of The Dandelion Knight for anyone who joins the list. Initially, I wanted to have a swanky setup like Amanda Abella’s, where you get the download directly from the browser as soon as you enter your email, but I couldn’t find a good free solution for that; there are free plugins for MailChimp signups, and free plugins for requiring an email before a download, but I couldn’t find any to require a MailChimp signup before a download. So I settled on installing Download Monitor and including download links to the list bribe in the final welcome email, which users receive when they’ve finished signing up for the list. (This last is done completely within MailChimp, in case that wasn’t clear.)

Once I’d installed Download Monitor, I ran into a problem with WordPress security settings: EPUB and MOBI files (i.e., e-reader files) can’t be uploaded due to a perceived security risk. It was pretty easy to figure out how to fix this, although it did involve editing wp-config.php, which again had to be done through my host’s file manager rather than the WordPress editor.

For a brief time, I did flirt with the idea of bypassing the WordPress media library altogether and just uploading the book files directly through Site5’s file manager. I decided to go the slightly more fiddly route because it seemed worth it to have Download Manager’s analytics available — especially because the links to the free copy of TDK aren’t authenticated at all, except by secrecy. I don’t flatter myself that it’s hugely likely someone will join my list and then post the links publicly… but if it happens, and I start getting a shit-ton of downloads without corresponding list signups, I’ll at least have a prayer of seeing it in my WordPress dashboard.

Ubiquitous mailing list signup

I wanted to at least experiment with having a list signup available elsewhere on the site. MailChimp Top Bar seemed as good an option as any. By default it’s sticky and on the top; I kept it sticky, but moved it to the bottom, which hopefully strikes a good balance between availability/noticeability and unobtrusiveness/ignorability.

Plugin manifest and summary of modifications

Here’s my full list of currently activated plugins:

  • Akismet
  • Download Monitor
  • Google Analytics Dashboard for WP
  • Jetpack by
  • MailChimp for WordPress
  • MailChimp for WordPress – Top Bar
  • WP to Twitter

Anything non-default about the plugins was changed via Settings, not by modifying the code directly.

As I’ve said before, I’m running the Quality theme. I’ve made text-color modifications to style.css and css/default.css, some minor layout modifications to page.php, and file upload security modifications to wp-config.php in the root directory.

I think that’s it! I don’t mean to suggest that these hacks make my site exceptional — quite the opposite, they make it feel more slapdash and likely to break. But it’s fun to figure things out, and it’s useful to learn how to do things outside the WordPress interface when necessary.

some nuts and bolts of an author website

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to top