Spring Sale! Save 30% on all books w/ code: PLANET24
Web Dev + WordPress + Security
Popular Posts
960 posts (organized by popularity)

Worst IPs: 2016 Edition

A little late this year, but following tradition here is my list of the absolute worst IP addresses from 2016. All in nice numerical order for easy crunching. These IPs are associated with all sorts of malicious activity, including exploit scanning, email harvesting, brute-force login attacks, referrer spam, and everything in between. Really obnoxious stuff that degrades your site’s performance and potentially threatens security. Continue reading »

Basic Webpack Setup

Preparing for Gutenberg, I’ve been sharpening my JavaScript skillz. Getting further into things like Webpack, React, Node.js, and all sort of other awesome scripting adventures. As I dive further into JavaScript land, it’s amazing how much more quickly I am able to do things that I never had to do before relying so heavily on JavaScript. Even so, the extra tools are good to have in the ’ol developer tool belt, so I’ll be sharing much more about JavaScript stuff […] Continue reading »

WordPress Plugin: SES Pro

SES Pro is a premium email newsletter plugin for WordPress. It is 100% shortcode-based with Ajax-powered signup forms that can be displayed anywhere. There are no monthly fees or limits on the number of subscribers, how many emails you can send, or anything else. It’s just a lightweight yet full-featured email-signup plugin that’s super-easy to use. Continue reading »

Ron Paul 2012 WordPress Plugin

I wanted to show support for Ron Paul on my WordPress website with a simple badge or button. Surprised at not finding any plugins for Ron Paul in the Directory, I decided to be the first. You can learn more in the following post, or download and install via the WordPress Plugin Directory. Or if you prefer, you can install direct via the comfort of the WP Admin Area, via Plugins > Add New. Just search for “Ron Paul 2012” […] Continue reading »

Simple Request Router via PHP and Apache/.htaccess

I’ve written many articles about how to redirect requests. Even so, I still get questions about how to set up a simple HTTP request router. As in you want to redirect or route all requests to some file or location. This is useful for building CMSs and scripts that handle traffic. For example, WordPress uses a simple request router when permalinks are enabled. For this tutorial, we’ll set this up using Apache/.htaccess and PHP. Continue reading »

New Demos and Tools Pages

Working on organizing the site, I’ve put together two new pages that round-up my Demos and Tools. The demos are organized into sections, Ajax, CSS, PHP, and so on. Most of the tools are for encoding and decoding, but will eventually include stuff for CSS, .htaccess, JavaScript, et al. Both of these new pages are readily accessible from the top menu bar (see left screenshot). It’s better than fun! Continue reading »

7G Firewall: September 2020 Update

Pleased to announce that the 7G Firewall is updated to version 1.3 (September 3rd, 2020). Now available for download, 100% free and open-source as always. Continue reading »

Enabling ModSecurity (Updated)

For years, I’ve not used ModSecurity for any of my own sites. Way back when I first tried ModSecurity, there were just too many false positives, so I stayed away from it, opting instead to develop my own fast Apache/.htaccess firewall. But my web host now is telling me that ModSecurity is required on all of their managed VPS plans. Continue reading »

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 »

Enable PHP fsockopen with CSF

Recently started some sites with Liquid Web hosting, everything going extremely well all around. There was one hiccup (at least for me) where PHP’s fsockopen was not working. At the time, I was trying to figure out why the Whois Lookup feature used by Blackhole Bad Bots was not working. Initial investigation revealed that fsockopen() external HTTP requests were getting blocked somewhere. Everything else worked, including making the requests via cURL. Continue reading »

WordPress pre_get_posts + Combined Category Archives

This is a quick post following from the latest redesign of my WordPress plugins website, Plugin Planet. There, I make use of WordPress great query functionality to display archives of multiple categories. For example, here is the combined archive for BBQ Pro and Docs. So that category archive displays all documentation posts for BBQ Pro. Likewise for other categories, for example here is the combined archive for Banhammer Pro and Tutorials. That category archive displays all tutorial posts for Banhammer […] Continue reading »

New WordPress Plugin: Simple Download Counter

Simple Download Counter is a free WordPress plugin that does exactly what it says: counts the number of times your files are downloaded. SDC is designed for maximum ease of use. The goal is a clean, lightweight “set it and forget it” solution for keeping track of downloads. Simply add your files via the plugin settings and display download links via shortcodes. Simple Download Counter does the rest. Continue reading »

Fix Gutenberg Errors

I’ve been exploring WordPress new Gutenberg functionality, and unfortunately keep encountering various weird errors. So to keep things organized and hopefully help others on the same path, I’m going to update this post with any Gutenberg errors for which I am able to find a solution. This includes any PHP errors, warnings, notices, as well as any JavaScript and/or debug/console errors. Continue reading »

Perishable Press 14th B-Day

Perishable Press turns 14 this year! Amazing how quickly time flies, especially when you enjoy your work. This site started back in early 2005. I remember reading a ton of books on web design, HTML, CSS, JavaScript, and everything in between. I soaked it all up like a sponge, and then practiced my new skills by developing Perishable Press, writing articles, sharing code, and helping all sorts of awesome people wherever possible. Truly an amazing journey that I hope continues […] Continue reading »

Weird Bug with Highlight.js

Working on adding syntax highlighting to my code snippets here at Perishable Press. To do it, I use my free WordPress plugin Prismatic. Basically all the plugin does is load up either the Highlight.js scripts and styles, or it loads up the Prism.js scripts and styles. So I can rule out the plugin itself for this “weird” little bug. The issue is with Highlight.js specifically. Continue reading »

Cleaning Up Google Search Results

This post is about how I cleaned up an incorrect URL in the Google search results. My business site is basically a one-page portfolio site, located at the URL https://monzillamedia.com/. But in the Google search results, the URL was showing as https://monzilla.biz/, which did not exist. So all potential customers were getting an error page. Fortunately I was able to re-acquire the monzilla.biz domain and redirect all traffic to monzillamedia.com. 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 »
Banhammer: Protect your WordPress site against threats.
Thoughts
Crazy that we’re almost halfway thru 2024.
I live right next door to the absolute loudest car in town. And the owner loves to drive it.
8G Firewall now out of beta testing, ready for use on production sites.
It's all about that ad revenue baby.
Note to self: encrypting 500 GB of data on my iMac takes around 8 hours.
Getting back into things after a bit of a break. Currently 7° F outside. Chillz.
2024 is going to make 2020 look like a vacation. Prepare accordingly.
Newsletter
Get news, updates, deals & tips via email.
Email kept private. Easy unsubscribe anytime.