🍁 Fall Sale: Save 25% on Pro Plugins & Books w/ code FALL2026
Web Dev + WordPress + Security
Category: WordPress
321 posts

New WordPress Plugin: Simple Login Notification

New WordPress plugin! Simple Login Notification does one thing and does it well: sends an email alert whenever an admin-level user logs in to your site. I use this plugin on all of my sites to keep an eye on any unauthorized activity. Not that I’m expecting any, but if it does happen I definitely want to know about it. The plugin size is only 4 KB (zipped) with virtually zero impact on performance or anything else. Win win win, […] Continue reading »

New WordPress Plugin: SAC Pro!

I’ve been developing WordPress chat plugins for over 10 years, and have received tons of great user feedback for the free version of Simple Ajax Chat (SAC). So many ideas and ways to improve the plugin that it just made sense to bring it all together and build a new “pro” version. So after several months of intense plugin development, I am excited to launch my latest WordPress plugin, SAC Pro. SAC Pro is completely rewritten from the ground up, […] Continue reading »

WP 6.0 Fix Error: QTags is not defined

“Quick” post about an error that may occur with WordPress 6.0 (and possibly other versions). After updating to WordPress 6, the JavaScript Errors Notifier extension was showing a “QTags is not defined” error on sites where custom Quicktags are configured (via plugins or custom scripts). Because of the error, custom Quicktags were broken and not added to the editor toolbar. This quick post explains why the error is happening and how to fix it (easily). Continue reading »

New Book: Wizard’s SQL Recipes for WordPress

I’m excited to launch my latest web-dev book, Wizard’s SQL Recipes for WordPress. I got the idea for this book way back when I was first learning how to build dynamic websites. I thought it would be useful to bring together all of the best SQL snippets in sort of a “spellbook” or “cookbook”. After all, SQL queries can seem like magic to the uninitiated. By entering concise, well-crafted commands, SQL enables anyone to interact with any relational database. It’s […] Continue reading »

Migrating All Book Accounts to Perishable Press Books

Just a heads up! I’m in the process of migrating all book accounts to the new bookstore at Perishable Press Books. The goal is to streamline everything — all books and user accounts — under the new books domain. This will make everything much simpler for everyone. Eventually, the other book sites will be taken offline, after everything is migrated to the new bookstore here at Perishable Press. Continue reading »

Protect WordPress Media Files

This is an experimental technique that I am playing with. It’s the simplest possible way that I could think of to protect all files in the WordPress Media Library using only Apache/.htaccess. I’ve been testing the code on an image-heavy site and so far there are no issues. So I want to put the code out there for others to test and hopefully provide feedback if anything less than perfect. It’s a super simple method that prevents media files from […] Continue reading »

Cutting Floor Interview

When I spend time on something, like an interview, I like to know that it was actually published somewhere. Below is an interview that I completed for a web-hosting company that apparently now is missing in action. It covers how I got into web development, upcoming projects, web security, work flow, writing books, WordPress, and more.. Continue reading »

Plugin Planet 2021 Redesign

Finally! Writing this post is the final step in the 2021 redesign of my WordPress plugins site, Plugin Planet. The site launched seven years ago in 2014. I think I spent a couple of months or so building the original site to the best of my ability. That first design stood the test of time, and honestly it would have been fine for another couple of years or more. But after seven years of changes, modifications, swapping out plugins, adding […] Continue reading »

WordPress Plugin: Disable WP Robots

WordPress 5.7 features a new Robots API that provides filter-based control over the robots meta tag. So if your site is running WordPress 5.7 or better, you will notice a new <meta /> tag included in the <head></head> section of your web pages. By default, the meta tag added by WordPress has a value of max-image-preview:large, which is fine IF it is the only robots meta tag on the page. If your site already has its own meta robots tag, […] Continue reading »

Fix Weird Hover Border in WordPress 5.7 Admin Menu

I’ve been testing the beta for WordPress 5.7. So far no complaints but there is one weird thing it looks like they are adding, some weird 4-pixel width border that displays when you hover over any item(s) on the main WordPress menu. It’s even got a transition animation to make it feel extra wonky. Here is a screenshot for those who have not yet had the pleasure of experiencing the new stylez (look on the left-hand side of the menu, […] Continue reading »

Welcome
Perishable Press is operated by Jeff Starr, a professional web developer and book author with two decades of experience. Here you will find posts about web development, WordPress, security, and more »
WP Themes In Depth: Build and sell awesome WordPress themes.
Thoughts
Working on a complete redesign of Perishable Press :)
The Office is Cheers with more irony.
More fine-grained control of macOS screen brightness: hold down Option + Shift before pressing either of the brightness keys. You get 64 increments instead of the usual 16.
REST Pro Tools featured in David McCan’s new video on locking down WordPress.
Gonna try exercise.
Launching my new plugin, REST Pro Tools 🛠️ Granular control of the WP REST API.
The algorithm is way too hypersensitive.
Newsletter
Get news, updates, deals & tips via email.
Email kept private. Easy unsubscribe anytime.