The WordPress platform of a national news outlet.

A custom theme, distribution to Google News, AMP and Instant Articles, multi-layer caching and automated deploys, for a national online newspaper.

Sector
Media and publishing
Practice
Software engineering
Year
Ongoing
How it works
Newsroom
Article publishedWordPress
CampaignsAd Manager
Custom theme
One theme, many outputs
BedrockTwig29 modulesRedis cacheVarnish purgeCI deploys
Readers
WebsiteHTML
AMPmobile
Google Newsfeed
Instant Articlessocial
In brief

For a national online newspaper we build and maintain the WordPress platform: a custom theme on Bedrock and Twig, with 29 modules covering AMP, Google News, structured data, video, donation banners and related articles. Redis and Varnish caching, automated deploys to staging and production, and ad campaign trafficking on Google Ad Manager.

29
modules in the custom theme
12
custom field groups
2
environments with automated deploys

Context

A newspaper publishes many articles a day and lives on traffic: every page has to be fast, indexed quickly and distributed on several channels. The newsroom must be able to work without thinking about the tech.

The problem

WordPress installed by hand and plugins updated from the dashboard don't hold up for a newspaper: unpinned versions, unrepeatable deploys, a cache that doesn't clear when news breaks.

What we did

  1. 01

    WordPress as a dependency

    Bedrock and Composer: core and plugins with pinned versions, per-environment configuration, repeatable deploys.

  2. 02

    A modular theme

    Twig templates and 29 modules: AMP with cache refresh, Google News feeds, structured data, breadcrumbs, video, featured authors, related and suggested articles, donation banners.

  3. 03

    Multi-layer caching

    Application cache on Redis and targeted Varnish purges on publish, so breaking news goes out instantly and the rest stays cached.

  4. 04

    Automated deploys

    A GitLab pipeline with Capistrano: one branch goes to staging, another to production. Errors tracked with Sentry.

  5. 05

    Advertising

    Trafficking of major advertisers' campaigns on Google Ad Manager, from go-live to end dates.

How it went

The newsroom publishes and the system distributes: website, AMP, Google News and social all start from the same content. Code changes go through staging and reach production with a deploy, not FTP.

Tools

WordPressBedrockComposerTwigACF ProYoast NewsAMPRedisVarnishGitLab CICapistranoGoogle Ad ManagerSentry

FAQ

Why Bedrock rather than classic WordPress?

Because it manages WordPress and plugins as dependencies: pinned versions, repeatable deploys, no surprise updates in production.

Can WordPress handle a newspaper's traffic?

Yes, with the right caching and a carefully written theme. Most problems come from generic plugins and themes, not from WordPress.

Contact

Facing something similar?

Tell us what you run today and what isn't working. We'll reply within one business day with a first technical read.

Email
hello@cloudfactory.it
Address
Viale di Trastevere 114, 00153 Rome, Italy