
Planting Trees with Code
A Digital are supporting tree planting projects through a partnership with Ecologi. For every piece of code we commit to our version control system, we're planting a tree!
Latest Code Posts

Integrating External Database Connections

Exploring database connection methods in CraftCMS and Yii. We connect to a Microsoft Azure database and show examples of how we can handle the data in a number of different ways between our plugin code and templates

Refactoring a slow search page with ajax to load faster

When connecting to enterprise systems we need to return the most recent data, this means we can't use caching but we end up with a slow loading page as a result. In this article we explain how to improve the speed whilst keeping the data fresh.

How higher traffic and sales exposed hidden performance issues and bugs

An honest look into some weaknesses in a site we've built, exposed by the perfect storm of situations. We set the scene and describe how we fixed it.

Compiling Tachyons CSS with Gulp

Following up on a previous post, this is how we implemented Tachyons into our CSS build process with Gulp.

Setting up a service to clear Craft's job queue

Using Redis for higher availability is great, but there is a potential pitfall.

Understanding and organising your page headings

Getting to grips with HTML headings on each page of your website is a surprising simple, yet powerful way to improve both accessibility and technical SEO.

Page Speed Optimisation - Latest Techniques

Optimising our font loading and htaccess file. Includes image manipulations using srcset, webp and lazy loading. Make your sites load faster!

Simplifying Local Development for Craft CMS

Setting up local development with MAMP and composer without the need for valet, homestead, docker, etc. We also make use of project config and automation.

High Availability Hosting for CraftCMS

We look at how to build and configure a HA server environment using the command line. We also configure Craft to use external Redis and Database servers.

How our team implements a Multiple Environment Configuration

A big part of our development process for our Craft and ExpressionEngine websites