Welcome to Perishable Press!
Home Page

Free and Open

In response to the nonsense reported here and here. The Web Belongs to Everyone The Web is a beautiful, incredible thing. It enables anyone with a connection to access an entire universe of human knowledge. The Web is like this because it is free and open. We the people built the Internet and it belongs to everyone. Each person may claim their own piece of the Internet, but no one person or group may claim ownership of its entirety. If you feel the need to control or regulate something, do so with your own computers on your own network. Please […] Read more »

Action & Filter Hooks for User Submitted Posts

The free version of my WordPress plugin User Submitted Posts is better than ever, with a wealth of new action and filter hooks, enabling developers to customize everything from shortcode output to post data, alert messages and more. Drop in for a quick summary of all new USP hooks. Read more »

WordPress Enable PHP Strict Error Reporting

When developing WordPress themes and plugins, I like to enable PHP’s strict error reporting. That way all errors and notices can be recognized and dealt with accordingly. Plus, enabling PHP strict error reporting is pretty easy to do using a simple must-use plugin. Here’s how to do it.. Read more »

s2member notes

I use s2member (free version) and s2member Pro on a few of my sites. Have been for several years now. Over the course of time, I have amassed a healthy collection of notes, code snippets and techniques for customizing default functionality, adding features, and so forth. Gonna post the collection online for the benefit of any others who may be seeking for similar modifications and/or related information. Read more »

Redirecting Hash Fragments with .htaccess

During this year’s site redesigns, I noticed in the server logs some 404 errors for various WordPress comments. These 404 requests each involved a fragment identifier (i.e., character string beginning with a pound sign, #) being interpreted as its HTML entity hex equivalent, %23. It may not seem like a big deal, but these days every detail counts, so it’s wise to clean up as many 404 errors as possible. Thus, here is a simple .htaccess technique for redirecting hash-fragment requests to their proper destination. Read more »

Back Into It

This year has been full of change, hard work, and lots of planning. First it was general clean-up, reorganization, and streamlining of online assets (e.g., axing unused domains, consolidating email addresses, closing old social media accounts, etc.). That may not sound like a lot of work, but after 15+ years working online, it was a LOT of stuff to go through and get organized. My goal is to simplify my process down to a focused stream of activity. This post logs some of the steps I’ve taken so far to get there and back into it (again). Read more »

Block revslider Scans

One of the most annoying, persistent scans I’ve seen in a long time are those hunting for the revslider vulnerability. In the five or so months since the exploit was discovered, many sites have been compromised. And based on what I’ve been seeing in my traffic logs, the risk is far from over. Apparently every 2-bit script kiddie and their pet hamster wants a piece of the “revslider action”. Read more »

Updates Galore

Just a quick post to let people know about the updates now available for my various books and plugins. Basically the entire month of May was spent on plugin and book updates, so here is a quick summary of what’s new. Read more »

xy.css moved to Perishable Press

Recently I’ve been implementing SSL on my domains and have been streamlining and updating some projects along the way. Consolidating properties is a great way to simplify workflow and boost productivity, so I’ve went ahead and moved xyCSS from its own domain, xy.css, to its new home here at Perishable Press. Read more »

Whitelist & Blacklist Plugins for BBQ

BBQ (Block Bad Queries) is a simple script that protects your website against malicious URL requests. BBQ checks all incoming traffic and quietly blocks bad requests containing nasty stuff like eval( and base64_. The plugin is ultra minimal, so there are no options to configure which strings are blocked or allowed — it’s basically a “set-it-and-forget-it” type plugin. To give the plugin more flexibility, here are two plugins that enable you to whitelist or blacklist your own custom strings. Read more »

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. Read more »

Book Winners!

Today I am pleased to announce the winners of the 2014 Book Giveaway, wherein 9 contestants win free copies of my books — The Tao of WordPress, WordPress Themes In Depth, and .htaccess made easy — including all bonus material and updates. Read more »

Clever Popup Ad? No Thanks.

So these days, I’m seeing more “clever” popups when visiting various websites. For example, do a search, see a result, click to visit.. and then before any content is shown, I’m hit with some annoying popup ad for whatever thing the site is trying to push. Read more »

Giving Away More Books!

A few days ago, I launched a Thanksgiving-themed book giveaway for Digging Into WordPress. The post has received some great comments that reminded me of how absolutely awesome people can be. So to chase the feeling and keep the momentum going, I’m giving away more books to 9 lucky winners. Read more »

WordPress Themes In Depth

Book Launch! My fourth book, WordPress Themes In Depth, focuses entirely on WordPress theme development. It goes in-depth on how to build, customize, and distribute your own WordPress themes. It’s 10+ years of experience with WordPress jam-packed into 450 pages of non-stop theme-building action. Read more »