This is the 3,000th blog post I've published on this site! Bloody hell! I first started a blog on Blogger.com in 2004 - twenty years ago. Like all blogs, I managed half a dozen posts before I forgot about it. Cut to 2007 and I decided to launch shkspr.mobi as a weird site dedicated to rendering Shakespeare's plays in txt spk. Judging by Archive.org I was still using Blogger. By 2008 I was…
Continue reading →
In the IndieWeb movement there's a concept of "POSSE" - Publish Once, Simultaneously Syndicate Elsewhere. You should publish your words, pictures, songs, reviews on your own site. And then you can choose to share them out to where your audience is. Perhaps that's posting the link on Facebook, or a copy of a photo on Instagram, or sharing the episode on YouTube. There's no shame in meeting your…
Continue reading →
One of the things I love about having a database-backed blog like WordPress is that's it opens up a delightful range of possibilities for displaying content. I've read and reviewed around 300 books over the last few years. So I wrote a scrap of code which goes through all my book reviews, grabs their cover and rating, and displays them in a nice grid. You can visit it at shkspr.mobi/blog/library …
Continue reading →
I have written a lot of blog posts. In some of those posts I link to other posts on my site. What's the easiest way of displaying those internal incoming links? Here's what it looks like: Code All we need to do is search WordPress for the URl of the current page. Loop through the results. Then display those links. $the_query = new WP_Query( array( 's' => get_the_permalink(), // …
Continue reading →
This uses the wp shell command. It gives you an interactive prompt into which you can do various WordPress "things". One small annoyance is that it doesn't like multi-line entry. It treats every hit of the enter key as "plz run the codez" - so, at the end of this blog post, I've put the commands in copy-n-paste format. Once you've installed WP CLIP, go to the command line and run wp shell.…
Continue reading →
If you've ever learned Mandarin Chinese, you'll know about "measure words". They're the sort of thing that trip up all new learners of the language. While 个 (gè) can be used as a generic measure word, using it everywhere makes you sound like an idiot (according to my old teacher). So you learn to use 个 for people, 包 for packets, and 根 for things which are long and thin. English has a similar con…
Continue reading →
Hello! Thank you for reading what I write. Sorry to ask, but… who are you? I was chatting to a friend about what it is like running a blog, finding new topics, keeping up with a daily schedule, moderating comments, etc. And they asked, quite reasonably, "who are your readers?" And, honestly, I have very little idea! The only analytics I have on here is basic WordPress JetPack statistics. I can s…
Continue reading →
I blog. A lot. Too much really. One of the things I like to do is see what I was rambling on about this time last year. And the year before that. And so on. So, here's my On This Day page and here's how I built it. WARNING Extremely quick and dirty code ahead! This allows you to add a shortcode like [ edent_on_this_day ] to a page and have it auto generate a list of posts you published on this …
Continue reading →
I know they say you should never read the bottom half of the web. This blog has existed in one form or other since 2004. Since then, I've approved TWELVE-THOUSAND comments. Most comments - but by no means all - are delightful. People wanting to share their own stories, add something to the discussion, or politely disagree. I moderate heavily. If someone is rude or abusive, their comment isn't …
Continue reading →
Jon Hicks has a lovely blog post about his site's design. In it, he briefly touches on something I find interesting: Blogging like it's 1972 I also finally realised that there's nothing stopping me from adding journal posts dated from before I started blogging. So I'm going to start adding key life moments as much as I can. A blog isn't an immutable chain of events. There's nothing to stop us…
Continue reading →
This blog uses WebMention technology. If you write an article on your website and mention one of my blog posts, I get a notification. That notification can then be published as a comment. It usually looks something like this: This means readers of my post can see where it has been mentioned around the web. They can read your article after reading mine. Nice! I've also set up a "bridge"…
Continue reading →
The best thing about WordPress is the plugin infrastructure. A million little gadgets to make your blog better. Sadly, there are all sorts of ways plugin authors can abuse their privileges. Dodgy code and user-hostile features sometimes make plugins more trouble than they're worth. Recently, the normally excellent Blubrry PowerPress plugin pissed me off. It's a useful plugin for publishing…
Continue reading →