Our projects often need a centralized, consistent, persistent, and flexible way to manage and interact with global data, state, and configuration parameters. In this series, you’ll learn deeply about WordPress, PHP, unit testing, git, architecture, requirements planning, and much more as you build this store plugin. To stretch you further, you’ll build it in three different programming paradigms: procedural, static class, and OOP.
Complete Master Series Project
This is a master series, meaning that you are defining, building, and testing a complete project while mastering each part of the process.
We start at the beginning and together walk through the project, step-by-step just like if we were on a team together.
Don’t skip steps. Walk systematically with me throughout each episode of each lab in this series.
In this series, you are going to doing the following:
- Planning out the project
- Building it in 3 different implementations
- Pure procedural
- Static class (procedural functions wrapped in a class)
- Build an API for the store, i.e. to allow other plugins, theme, and your code to interact with it
- Validate behavior by building a test suite
- Validate code complies with the WordPress Coding Standard, i.e. we’ll use WPCS
- Use git for version control
- Push to and work with GitHub
In this series, you will learn the following by actively building this project with Tonya:
- Deep PHP
- Different ways of thinking about architecture and implementation
- Testing your code to validate that it performs as designed
- Validating your code to a coding standard
- Advanced PHP topics such as ArrayAccess
You’re learning the key traits and practices of a professional web developer.
At a minimum, I’d suggest that you have:
- Basic understanding of PHP including:
- Passing data in and out of functions
- Conditional expressions
- Data types including arrays and booleans
- Built a plugin before (even a very basic one)
- Basic understanding of git
If you need to brush up your skills before you start, check out the PHP Library and Git Empowered Series.