Roots Discourse

Wanted to share my latest Roots stack build

Hey all, just wanted to share my latest build on the Roots stack.

Here’s an entrant only section - https://touchtunesbreakoutband.com/diy-toolkit/

This was my first site using the full Roots stack and while there was a slight learning curve, particularly in Trellis, I’ll definitely be using Roots for Wordpress builds here on out. The site has 4 phases, we’re currently in phase 2. The phases are adjusted via theme options, the theme template files use conditional values which check the phase - the site layout is adjusted depending on the phase.

The real challenge was creating 4 different themes all rolled into one. The second challenge was handling traffic as the site streams MP3s so I leveraged WP Offload S3 and W3 total cache. Site build took about 2 months, most of the time was devoted to the Likes system as well the audio player which is based off SoundManager2. I also had to build a script which transferred all 300 entries from an excel spreadsheet to Wordpress posts - there was a lot of trial and error here but a good learning experience.

The site is seeing about 100k views a month so traffic is very healthy, I monitor the server with New Relic but haven’t run into any serious problems.Anyways I just wanted to share what’s currently being deployed with the Roots stack and thank the devs who devote a ton of time to making Wordpress bearable.

edit: The site’s been moved to phase 3 - phase 2 demo is available here -> http://phase2demo.touchtunesbreakoutband.com/ (URL gore…)

5 Likes

Looks great Alex, and everything loads super quick. Definitely a site to be proud of.

The site phases sound like a unique challenge.
There are many plugins for mapping and importing spreadsheet data, hope you didn’t have to reinvent the wheel there.

Have you turned on micro-caching in Trellis?

1 Like

Definitely recommend this route as opposed to using a plugin such as W3 Total Cache. Been very impressed with the Trellis micro-caching on the sites I’ve used it on, including https://roots.io/ (which previously used Batcache, and then W3 Total Cache before that).

3 Likes

I’ll definitely check out micro caching. Is this the documentation? https://roots.io/trellis/docs/fastcgi-caching/

The issue I was running into with caching is the grid view of the bands on the home page needs to be random on each refresh. A lot of caching plugins were caching the random query so I needed flexibility on which queries to cache.

I’m really interesting in putting varnish in front of a site but haven’t had time to explore that just yet.

Yes, page caching would stop it from being random on every refresh. Varnish is full page caching as well so that wouldn’t benefit you.

Edit: I should probably clarify, I think some of these full-page caching solutions do have the ability to not cache “sections”, but the added work to do that is generally substantial. Each has it’s own way of doing things.