Skip to content
Morrison Made

Laravel · PHP · WordPress · Integrations

Complex web development, made manageable.

I build, improve and maintain Laravel, PHP and WordPress systems for businesses and agencies that need experienced technical support. Ten years of working inside long-running, business-critical applications.

01 — What I help with

Most people get in touch with a problem, not a technology list.

/01

A Laravel application has become difficult to maintain

Slow releases, fragile tests and code nobody wants to touch. I work through it in stages so the application stays online while it gets easier to change.

/02

A business-critical PHP platform needs upgrading

Old PHP versions, unsupported dependencies and no clear upgrade path. I map the risks first, then move the platform forward without a rewrite you can’t afford.

/03

A WordPress project needs functionality no plugin provides

Custom plugins built properly: your own admin screens, data structures and hooks, written so the next developer can read them.

/04

Several systems need to exchange data reliably

Store, stock, accounts and fulfilment talking to each other, with retries, logging and alerts so failures are visible before customers notice them.

/05

An agency needs dependable backend capacity

I work as part of your team, to your standards and your process, and I’m comfortable talking directly to your client when that helps.

/06

A previous developer left behind a complicated application

Undocumented code, unknown deployment steps, no handover. I take ownership, write down how it actually works, and keep it running.

02 — Core expertise

The backend capabilities behind that work.

A compact overview for technical teams. Open any area for more detail; every item remains available without JavaScript.

Laravel and custom PHP

Portals, internal tools, scheduling, reporting and billing, backed by structured code, tests and repeatable deployments.

WordPress and WooCommerce

Purpose-built plugins, checkout logic, product data and admin tooling that remain maintainable through core updates.

APIs and integrations

Reliable connections between payments, couriers, CRMs, accounts and ERP, with queues, retries, monitoring and alerts.

Legacy modernisation

Risk-led audits and incremental upgrades that move older PHP systems onto supported versions without an unnecessary rewrite.

Ecommerce development

The operational work behind a storefront: stock, pricing, fulfilment and moving orders cleanly between business systems.

Ongoing technical support

Security updates, monitoring and steady improvements, available as a monthly arrangement or an agreed block of hours.

03 — Selected work

Selected work.

A mix of live projects and work in progress. Happy to talk through any of them in more detail.

Pictureblast Laravel portal

A manual operational process rebuilt as a Laravel portal

Replaced a process that ran on spreadsheets and email with a single application the team works in day to day. I still maintain and extend it under an ongoing arrangement.

What changed
One operational source of truth replaced a fragmented workflow, with new features added in manageable stages.

Laravel MySQL Ongoing maintenance

Live · maintained

Capture Every Memory Custom WordPress plugin

A QR wedding gallery, sold through WordPress

A custom plugin adding the functionality needed to sell and run a QR-code wedding photo gallery, with its own admin screens rather than a stack of off-the-shelf plugins.

What changed
The client can sell, create and manage each gallery from the WordPress environment they already use.

WordPress Custom plugin Ecommerce

Live

Mr Knife Guy Custom WordPress plugin

Age verification built into a WordPress store

A purpose-built age verification plugin for a retailer selling age-restricted products, written to WordPress standards so updates do not break it.

What changed
A maintainable verification flow now sits inside the existing store rather than depending on a generic plugin stack.

WordPress Compliance Custom plugin

Live

Also in progress

An interactive experience finder combining a map, registration form and filterable results grid, and a website build shared with another front-end developer.

Happy to walk through either, along with the code behind the projects above.

Ask about a project

Client feedback

Chris was a pleasure to work with from start to finish. He was professional, friendly and incredibly efficient, and completed the work immediately. After months of worry about the issue it was a huge relief to have it resolved so smoothly. I’m really grateful for his help and wouldn’t hesitate to recommend him.

Lucy, Mr. Knife GuyAge verification plugin

Chris understands both the technical detail and how our team actually works. He turned a complicated manual process into a system we rely on every day, and he continues to improve it without disrupting the business.

Daniel, PictureblastLaravel operations portal

04 — How I work

No surprises, and no jargon in the updates.

  1. STEP 01

    Understand the system and the business

    I read the code, talk to the people using it and find out what the business actually needs before proposing anything.

  2. STEP 02

    Name the risks, recommend an approach

    A short written summary of what’s fragile, what it would cost to fix and what I’d do first. In plain language you can forward to a colleague.

  3. STEP 03

    Build in manageable stages

    Work broken into pieces that ship on their own, with regular demos, so you can see progress and change direction without losing the budget.

  4. STEP 04

    Test, deploy and support

    Automated tests, a repeatable deployment and documentation you keep. I stay available afterwards, either retained or ad hoc.

05 — About

One developer. Ten years inside complicated systems.

I’m a web developer with around ten years of professional experience, most of it in an agency, building and looking after Laravel, PHP and WordPress applications. I take on a limited number of freelance projects for businesses and agencies that need experienced backend capacity.

Current availability: I’m accepting enquiries for new projects and ongoing support. I keep the number of active engagements deliberately small, so availability is agreed clearly before any work starts.

You deal with me directly. No account manager in between, no team of juniors doing the work, and no pretending to be an agency. That also means honest availability, and honest answers when something is a bad idea.

The part I enjoy most is going into an unfamiliar codebase, working out how it fits together, and leaving it in a state where the next change is straightforward.

Laravel PHP 8 MySQL WordPress WooCommerce Magento REST / GraphQL Queues CI / CD

06 — Get in touch

Have a complicated web project that needs an experienced pair of hands?

Tell me roughly what you’re dealing with. I’ll reply within one working day, and if it isn’t something I can help with I’ll say so.

chris@morrisonmade.co.uk · Shrewsbury, United Kingdom

Your details are used only to respond to your enquiry. Read the privacy notice.