How to Automatically Close Comments on Old WordPress Posts: A Practical Guide
Close comments, pingbacks, and trackbacks on old WordPress posts with Auto-Close 3.2.1. Set ages per post type, keep exceptions open, and preview before you run it.

Close comments, pingbacks, and trackbacks on old WordPress posts with Auto-Close 3.2.1. Set ages per post type, keep exceptions open, and preview before you run it.

Most syntax highlighting plugins replace the core Code block with their own. WebberZone Code Block Highlighting extends core/code instead, with Prism.js or highlight.php, 21 themes and per-block controls.

There are two common ways to serve WebP to browsers that support it. One decides on the server, by reading the request’s Accept header and swapping the file. The other lets the browser decide, using a <picture> element. Both work as long as every request reaches your server. Put a cache or CDN in between,…

I’ve never met a site owner who was happy with WordPress’s default search results. The reason is always the same. Core search isn’t broken. It does exactly what it was written to do. It just isn’t a search engine. It’s a database filter with a little sorting bolted on top, and once your site grows…

Most WordPress media libraries are full of JPEGs and PNGs uploaded long before WebP or AVIF were an option. New uploads are the easy part. The back catalog is the hard part, and I had no interest in shipping it to a third-party service for re-encoding. I built WebberZone Image Optimizer to do that conversion…

Back in 2015, I moved my WordPress plugins under this domain. I also needed proper documentation, and every tool I tried worked the way its author wanted, not the way I did. Documentation software treated multiple products as a premium feature, which is a fair business model. But, as a completely free plugin offering, I…

A popular posts list can get stuck showing the same old articles. I’ve been building Top 10 for nearly 20 years, and choosing which views count matters as much as where you display the results. Top 10 tracks posts, pages and custom post types, with the data stored in your WordPress database. You can display…

Complex WordPress searches can spend more time joining related tables than finding matching posts. I saw this in Better Search when a query searched post meta, taxonomies, comments, and multiple terms at once. The changes I made in Better Search 4.4.3 reduce unnecessary database work while keeping the existing relevance model intact. Replacing row-multiplying joins…

Related posts plugins need to know what’s in your content to recommend anything useful. Some do that analysis on your server. Others send your content to an external service and get recommendations back. That difference matters more than it looks. Once content (and potentially visitor data) leave your server, you’re relying on someone else’s infrastructure,…

WordPress ships with a search feature that sorts results by date. Not by how well they match what the visitor typed. I’ve watched visitors on my own sites search for a topic, scroll past the first page of results, and give up because the most relevant post was buried beneath newer but unrelated entries. When…

Related posts have a reputation for slowing sites down. Of everything people raise with me about them, speed comes up first and foremost. The worry has a basis. A naive implementation runs a heavy query on every page load, scans the entire posts table, and adds weight to your time to first byte. Whether it…

Every time I published a tutorial that included code, the default WordPress code block looked flat and unreadable. Plain monospace text on a gray background. No colors, no line numbers, nothing to help a reader scan a snippet and find the line that matters. Nothing beautiful. I wanted syntax highlighting that didn’t require swapping out…