It is currently impossible to get notified of new WordPress.org support forum replies without subscribing to each individual topic via email. See this Meta Track ticket for details. So I created ...
Here is a quick snippet of a PHP to store Contact Form 7 form submissions in TablePress tables. Make sure you update the form-to-table-ID mapping in $form_to_table_map array to match your setup: ...
This is an unedited video of me fixing a bug reported by a user on the WordPress support forum for my Widget Context plugin. Here is the pull request on GitHub if you want to follow along. I star...
Here is a quick demo video of a bash script for updating the “Tested up to” version of multiple WordPress plugins at the same time. This solves the pain of updating the readme.txt file for al...
https://kaspars.net/blog/plugins-bulk-update-tested-up-to-version
E-commerce checkout experience on mobile isn’t great so back in 2014 I started working on a prototype plugin for WooCommerce that would allow users to “checkout later” by entering their ema...
I created the Block Context plugin to change the visibility of WordPress blocks based on various rules and conditions. It uses the render_block filter to hide a block based on the rules selected ...
Turns out that named and anonymous Docker volumes (not host mounted volumes) are always owned by root even if those files and directories already exist inside the container with different permiss...
Sign In with Apple is an authentication service by Apple similar to Facebook Login or Google Sign-In. Here are my notes on integrating it with website sign-in while working on a WordPress specifi...
The generic “Custom Fields” feature in WordPress is really useful for adding meta data to posts such as redirect URLs or custom feature flags. However, this metabox wasn’t updated for Guten...
I’ve been wanting to create a short demo video for my Storage for Contact Form 7 plugin in hopes that it would increase sales by engaging users that don’t enjoy reading long sales pages. Last...
Today I learned about weekly work journals and figured I would try to keep one myself since there is usually a lot of learning happening during the week and most of that knowledge is hidden in cl...
Homebrew is an awesome command-line software management solution for macOS (similar to MacPorts). It can install pretty much all software required for WordPress development and keep it organised ...
Turns out Laravel Homestead is almost exactly the development environment I was looking for — it can be added as a Composer dependancy to any PHP project and configured using a simple Yaml file...
I’ve started working on the Block Context plugin for Gutenberg — a companion to my Widget Context plugin which has around 70,000 active users. You’ll be able to show and hide content blocks...
The last time I looked at anything OpenID related was back in 2008 when federated authentication was the hype before it was overtaken by the blockchain, machine learning and artificial intelligen...
Wouldn’t it be awesome to have a virtual WordPress development environment added to any plugin or theme as a Composer dependancy? Today I discovered the Drupal VM project which enables exactly ...
Google Smart Lock is an app for iOS and Android devices that can talk to U2F security keys over bluetooth and NFC. Wouldn’t it be great to use it with the WordPress Two Factor plugin? Turns out...
It took me a few days to read through the relevant parts of the webpack and webpack-dev-server source code and figure out how to enable Webpack Hot Module Replacement for any project that doesn...
I’ve decided to retire the WordPress blogroll project that I started in 2013. It was originally built to share the list of WordPress related blogs that I was following on Google Reader. I’ve ...
Static websites are great but they still need some kind of content management system. And committing Markdown files to GitHub isn’t a friendly option for the majority of users including develop...
This morning I created an Atom package for the WordPress Coding Standard (WPCS) whitelist flag autocomplete. I used this blog post by Will Boyd along with the autocomplete boilerplate repository ...
Every few month I need to use WordPress.com to create or update a site for a friend. And every time I get frustrated with how confusing and convoluted the user interface is. “Reader” is the d...
Recently I’ve been updating and refreshing WProll.com — the directory of hand picked blogs covering the world of WordPress. Here are the Top 100 WordPress blogs according to the Rollrank ...
Drupal faded because its corporate steward, Acquia, placed its own success ahead of bolstering Drupal’s status as a truly open standard. WordPress has reached its current level of ubiquity beca...
Update: This script has been converted into a proper PHP library called MiniSheets that can be installed as a Composer dependency. All instructions below are for the original script. Excel .xlsx ...
Here is how to enforce SSL for WordPress admin only on certain sites on your Multisite network by adding this snippet to wp-config.php: $ssl_domains = array( 'example.com', 'anotherexample.com', ...
Recently I’ve been involved in developing the Two-factor authentication plugin for WordPress. As part of research of the two step verification setup process I’ve created these screenshots. Go...
I’m embellishing a bit here, and experienced WordPress users may think the Admin Dashboard is obvious, but try to imagine how this process feels to someone who’s never used WordPress? How wou...
I wonder if it has to be a tvOS app. Glad there is the WooCommerce REST API. Apparently it’s all HTML and Javascript with some Apple specific app magic on top: You build these client-server a...
During the weekend I updated the Contact Form 7 Extras plugin to make it compatible with the latest version of the Contact Form 7 plugin which removed one of the hooks that was used for adding th...