Blog

I'm not known for my regular writing, but if I've got something to share, you'll find it here. Expect blog articles about Laravel, PHP, WordPress and other web topics.

A fresh start, built on Jigsaw

Posted on 15th August 2018

It's been a while since my last blog post, and even longer since my site has a refresh. Working on your own website is always the hardest, but the time had come for my old site to be replaced. This evening I've released a new version...

Parse a YouTube RSS feed with my PHP package

Posted on 27th April 2017

Including social media feeds on websites is common these days - sometimes via embedded widgets or some via a more "integrated" approach. To help with including a feed for a YouTube channel on websites, I've built and released...

WordPress 404 Error with Advanced Custom Fields

Posted on 22nd February 2017

Recently whilst working on a WordPress website for a client, I came across a problem. The site made use of the Advanced Custom Fields (ACF) Pro plugin - which lets you easily define custom fields to store data against posts / pages...

Laravel 5.2 Authentication Custom User Providers

Posted on 12th March 2016

If you haven't heard of Laravel before, check it out - it's a modern PHP framework that makes it a breeze to develop web applications. As part of Laravel, it includes an Authentication service which lets users login to your application. The Laravel...

WordPress With Load Balancer SSL Termination

Posted on 26th February 2016

If attempt to run WordPress in a load balanced environment with SSL terminated on the load balancer(s), you may find requests to your site get stuck in a redirect loop. This is due to WordPress not trusting forwarded SSL by default. To solve...

Forwarded SSL with the Happyr LinkedIn API client

Posted on 31st January 2016

Sometimes when working with a library you hit a problem that isn't covered in the documentation and you need to roll up your sleeves and get stuck in to find solve the issue. I had to do this recently when working a project. This project needed...

Working with WordPress & GIT

Posted on 14th August 2014

Every developer has their own way of dealing with the beast that is WordPress whilst trying to follow good development practices. It's always best to avoid 'Cowboy Coding'; aka hacking code on the live server. With the ability to edit...

An introduction to website loading time optimisation

Posted on 23rd July 2014

Nobody likes a slow website - with the fast-paced world we live in, users don't have time to sit and wait for your website to load. The average size of a web page from the top 1,000 websites is now 1.62mb (source). The larger the size of the...

Deploy your PHP website with Capistrano

Posted on 30th July 2013

The way developers deploy code to web servers is changing. Gone are the days of remembering which files you've changed and manually dragging and dropping files around an FTP client. This deployment method is risky - it's easy to miss...

Setup a Postfix server for PHP on Ubuntu

Posted on 19th February 2013

Almost two years have passed since my last blog post, so I thought something nice and techy would be good to get started with again. I'm new to managing my own server, I've always left it to WHM and cPanel to look after everything...

Heart & Sole Web Conference

Posted on 30th January 2011

On Friday night I headed over to Portsmouth straight from work to attend my first web conference / meet-up style event. I was a little unsure of what to expect from the night because a) it was the first event the organiser has put on, b) the tick...

BBC Radio 1 – Access All Areas

Posted on 4th November 2010

Monday was the start of the BBC Radio 1 Access All Areas week – where they give the listeners to see what goes on behind the scenes at Radio 1. They've held interviews and live web chats with DJ'S and the Newsbeat teams, live streaming...

Testing in Internet Explorer

Posted on 3rd July 2010

Internet Explorer. You either love it or hate it. If your a web developer like myself, the chances you are to hate it. With three different versions currently in use (that all render pages slightly differently) and a fourth in development, it can often...