Return to profile for Alain Schlesser

Combining the WordPress Editing Experience with a Modern PHP Infrastructure

180 minute intermediate workshop

Description/Proposal

WordPress is pretty good at letting content and marketing teams create and manage their own content. This is the main reason, why it is still so popular as a company web framework. However, most client websites grow organically to include more and more business processes into the WordPress application lifecycle, which ends up being problematic at best.

WordPress does not provide the proper architecture and mechanisms to deal with business processes in a reliable and scalable way. What's more, its code is mostly legacy procedural PHP, which makes it hard to create reliable and maintainable code on top of it.

This workshop will go through the concepts of wrapping a WordPress site into a scalable architecture, using a combination of existing and custom packages, that provides the following benefits:

  • services architecture that lets plugins define their dependencies, with automatically resolved loading order
  • auto-wiring dependency injection that allows coding against interfaces instead of implementations
  • configuration management that can account for differences in environments
  • centralized logging throughout the entire site that can be sent to logging servers
  • bus system that handles events and commands without blocking the frontend
  • all of this without any noticeable impact on content editors

The end result is a WordPress site that embraces most of the commonly accepted PHP best practices, while still offering the same well-known editing UX your company's content editors love.