Overview
Michael Bossen’s portfolio site is a custom WordPress theme built from scratch to present his creative work with precision and intentionality. Developed by Jack Parker, it centers on a curated work grid — each project hand-ordered through ACF Pro rather than automated sorting — paired with dedicated single-project pages that support flexible media layouts including full-width images, embedded video, and multi-column image grids. A lean About page and clean typography round out the experience.
View the website here: michaelbossen.com.
Why it's notable
Rather than reaching for a theme builder or off-the-shelf portfolio template, this site was architected as a fully custom WordPress theme with its own companion plugin for the work custom post type, a SASS/Grunt build pipeline, and a deliberate touch/no-touch interaction model using Modernizr, Velocity.js, and hoverIntent. The content order for the portfolio grid — including the circular prev/next navigation on individual project pages — is driven entirely by an ACF relationship field, giving the client full editorial control over sequencing without relying on publish dates or menu order. Image fidelity was treated as a first-class concern: JPEG quality is maxed out, thumbnail compression is disabled, and GIF animation is explicitly preserved.
Unique challenges
One of the more nuanced challenges was building a curated navigation system that feels seamless. Because portfolio order is controlled by a hand-curated ACF relationship field rather than a standard WordPress query, the prev/next logic had to resolve a post’s position within that field’s value, wrap circularly from last to first, and remain stable even as projects are added or reordered — all without a conventional loop. Additional complexity came from the video embed layer: rather than using an embed shortcode, video iframes are parsed with regex at render time to programmatically inject Vimeo-specific query parameters and strip unwanted UI elements, keeping the presentation clean without requiring editors to manage embed URLs manually.