Modernize WordPress for a multi-developer, multi-environment workflow

WordPress has a ridiculously low point of entry, and that may be fine for a single developer or site owner who does everything from the Dashboard and Theme Customizer. But what if you have multiple developers and multiple environments? How do you develop and deploy new features, maintain software dependencies, and keep your sanity? There really is a better way: Bedrock from Roots.io, a professional WordPress project boilerplate.

UT Chattanooga had a WordPress Multisite that was managed “the old way” since 2007. We had a test environment and a production environment, running on a solid infrastructure, but making updates to our custom theme and plugins was done via FTP and sheer luck. Project history included broken deployments, seat-of-the-pants recoveries, and well-meaning super-admins crashing the production site by installing incompatible plugins.

In 2021, with several new coders onboard and increased pressure to develop and deliver custom plugins and themes, we knew we needed to modernize our WordPress project, and automate deployment to the on-prem infrastructure.

For local development, Lando was an obvious choice, since we were already using it for Drupal development. But what about defining the project with Composer, and using Git for multi-dev source control? Enter Bedrock, from Roots.io, a professional WordPress project boilerplate. Bedrock makes WordPress multi-environment capable, while PHP Composer manages all WordPress software, even custom private themes and plugins. Bedrock restructures WordPress core for multiple environments with individual configurations, and makes it easy to keep the project under version control with Git.

Laravel Envoy makes multi-environment deployments predictable, with zero downtime and scripted server commands. No more long nights of maintenance, no more running WordPress automated updates direct from the Dashboard. No more trying to remember all of the post-deployment tasks, such as updating the database and flushing caches. And what if something fails and we need to roll back to the previous deployment? Well, we have that covered! Envoy lets you run any command line SSH or WP-CLI task in a storybook script.

Presenter

Chris Gilligan — The University of Tennessee-Chattanooga

Log in

Please log in to access the recording, slides and other session materials. Paid members have full access to the entire library.

Forgot your password?

New members

HighEdWeb offers several membership classes. Join today as a premium, affiliate, student or institutional member for full access to this session. Become a paid member.

Shortcode

AAI11

Tags