# 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
- URL: https://cloudfactory.it/en/work/wordpress-news-publisher-platform/

## 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. **WordPress as a dependency.** Bedrock and Composer: core and plugins with pinned versions, per-environment configuration, repeatable deploys.
2. **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. **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. **Automated deploys.** A GitLab pipeline with Capistrano: one branch goes to staging, another to production. Errors tracked with Sentry.
5. **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

WordPress, Bedrock, Composer, Twig, ACF Pro, Yoast News, AMP, Redis, Varnish, GitLab CI, Capistrano, Google Ad Manager, Sentry

## 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.

---

Cloudfactory S.r.l., Rome. Contact: hello@cloudfactory.it
