Remove register link from WordPress wp-login.php

I recently had to enable user registrations on a WordPress multisite, so that shops on that site could allow customers to register. I don't want users to register any other way, only through specific applications on specific subsites. Enabling user registrations adds a "register" link to the wp-login.php script page. That invites trouble!

PHP really doesn’t do Unicode

I've heard many times that PHP doesn't really do Unicode, or not properly. In seven years of working primarily in PHP, always in UTF-8, I've never really hit a problem, so I always figured it was something esoteric and unimportant for me. But already this year I've seen this problem twice, in different ways.

PDF to OCR in Linux

SWMBO has a pile of PDF documents to process and extract information from, and over 50 of them are scanned which means -- NO COPY/PASTE! Unless we rescan with OCR of course. On Windows, she'd probably just use Acrobat, but on Linux...

Why I moved comments to Disqus

Running a blog, even a low-volume out-of-the-way blog like mine, attracts spammers. It's a simple fact of life. If you have comments turned on, you will get spam. There's lots of ways to deal with that, but no way to stop it coming. Lately, it's been hammering the server hosting my blog, so I decided to change how I was dealing with spam by essentially outsourcing most of the problem to Disqus.

Remove the WordPress post date filter on custom post type admin pages

WordPress custom post types can be very useful for storing all sorts of different types of data in WordPress -- and I should really write a post about that some time. But the date a post was published, i.e. its post_date, isn't important for many custom post types. So why have a drop-down list of dates to filter your custom posts types by if you don't need it?

Stop CloudFlare Rocketscript breaking WordPress plugin scripts

CloudFlare offers a service called Rocketscript, which compresses, concatenates, and defers any JavaScript on your web pages. On some websites, it can make a significant difference to the apparent page load time, because it waits until the web browser has loaded the page before it loads and executes scripts. Of course, that sometimes means it breaks things! Fortunately, CloudFlare offers a way to avoid that, and it's possible to use it on your WordPress plugin scripts.