Project Images for SportsLit
Project Images for SportsLit

A WordPress website for a sports podcast

  • WordPress website
  • Custom post types with shared taxonomies and bidirectional fields
  • Extensive use of ACF (Advanced Custom Fields)
  • Custom responsive theme using Elementor Pro
  • Custom PHP and Javascript


Going beyond basic blog posts, the content model was structured around major subject matter (episodes, people, books) joined together by common fields and taxonomies. The result is a potentially deep nexus of inter-linked content, valued by search engines and end-users alike.

Custom Post Types, ACF, Bidirectional Fields

To facilitate the model within WordPress, custom post types were created and custom forms built using ACF (Advanced Content Fields) extensively, including support for bidirectional fields.

Bidirectional fields are form elements connected between specific posts (of different content types), so that edits in one post are automatically reflected in another. This saves on editing labour but more importantly it also automatically builds up highly-relevant specific linkages between pieces of content, bringing more value than (vague) simple tagging.

Shared Taxonomies

Some term taxonomies are shared across post types, and this was not an easy decision. Shared taxonomies offer the benefit of a single universal tag list to manage, however it requires extra care and management in other aspects like rendering tag totals, lists and links.

One hard fact was apparent early on: having a “Sport” taxonomy was going to be a huge list (in theory, listing every sport in the world) and it made no sense to duplicate and separately manage such a list multiple times (ie for each content type). A shared taxonomy made more sense.

In hindsight, separate independent taxonomies could have been mirrored and managed but would require a lot more custom code. Overall this is it’s a case of choosing your pain; there’s no free lunch!

Theme Templates

To skin the experience, Elementor Pro was used, specifically the template system. With it a custom responsive theme was created using repeated components and conditional rules. Using Elementor allowed for quick spin-up and also easy massaging over time.

The more technical limits of Elementor were hit pretty quickly as it has shallow support for ACF (among other things), and where it failed in this regard custom shortcodes were used. In any case, Elementor has lots of FOUC issues and unsurprisingly always feels ‘sluggy’ (front and back -end’s).

Ultimately, the website, past this version 1 soft launch, will be weened off of Elementor, which more and more only seems like a convenient prototyping tool, over to a more performant and proper custom WP theme.