How To Correctly Size WordPress Images

Introduction This is a bit of a minefield topic, as there are a lot of plugins and ‘solutions’ out there that require you to pay money or install bloated software to accomplish something WordPress is designed to handle. In this post, I will show you how to have WordPress generate specific sizes for your images […]

Hosting Updateable WordPress Plugins on GitHub

Introduction If, like me, you enjoy writing custom plugins for WordPress, you may know the daunting feeling of managing the versions of your plugins across many websites. While you can use a PHP package manager like Composer for your plugins, this isn’t appropriate for most WordPress deployments. For most, using WordPress’ interface to install and […]

Testing Laravel & Livewire in Github Actions

The Issue We’re Resolving When running a Laravel test suite with Livewire components, the default workflow file provided by GitHub for Laravel likely won’t pass. When using their default config, I was presented with errors such as this: The test in question was simply checking if the component was rendered when a certain page was […]

Remove the ‘Website’ field from the WordPress comment form

Introduction The default WordPress comment form contains the following fields: I’m not a fan of the website field, especially since it’s optional anyway. As such, I like to remove it from my blogs. This is a 3-step process: Remove the Website Field This code snippet uses the comment_form_default_fields hook to remove the url field from […]

Rebuilding a Divi website with a custom Block Theme

Introduction Before the 4th of July 2024, my website (yes, this one) exclusively used the popular WordPress theme Divi. You can read more about this build here. I’ve had a love-hate relationship with Divi over the years. When I was first learning the ropes of WordPress, I found Divi to be an excellent tool to […]

YouTube API with Laravel & Guzzle Http

I felt that my minimal, PHP YouTube client was worth sharing. If you’re looking to do something similar, interacting with the YouTube API via PHP, then look no further.

Add a Honeypot to Livewire Volt Forms

What are Livewire and Volt? Livewire allows you to build ‘Powerful, dynamic, front-end UIs without leaving PHP’. For me, as a PHP fanboy, it’s quickly becoming my bread and butter for creating reactive components all within the comfort of my own backyard. Livewire Volt is a package you can use on top of Livewire, described […]

Local PHP development with Docker Compose

Introduction This post will cover how I host local copies of PHP websites running WordPress and Laravel with Docker Compose. This removes the need to install PHP, Composer, Nginx/Apache, MySQL, NPM/Node, etc locally on your host machine. I run my local development environments within Docker to avoid bloating my system. This means all of the […]

Foreign Keys in Laravel Migrations, Models & Eloquent ORM

The problem we’re solving I’m building a small SaaS project with Laravel. My project is a website up-time monitoring platform that pings users’ websites every 5 minutes to check if they’re live. Suppose a website is unreachable for any reason: In that case, a notification will then be sent to the account owner so they […]

A Guide to Optimising Image Sizes in Divi

Introduction Within web design, images are central to user experience. However, unoptimised images can significantly slow down your website. For Divi users, fine-tuning image sizes can vastly improve site speed and performance. This guide dives deep into how you can optimise image sizes in Divi, ensuring your website remains visually appealing without compromising on speed. […]

12 Next