Modern Software Engineering in WordPress
Perfect resources in order of quality:
theAverageDev, specialized in Test-driven development by Luca Tumedei, author of wp-browser
OOP in Wordpress
Dependency Injection explained at PHP: The Right Way
- Organizing your files in an object-oriented WordPress plugin. Not perfect suggestions, but reasonable basic principles.
Typical design patterns in WordPress
About using Service Containers aka Dependency Injection and amazing short explanation in Using A Service Container To Improve Your WordPress Code example. Same author on implementing the Repository Pattern in WordPress. Using Laravel’s Container In A WordPress Plugin
Singletons and their use in WordPress Solves: no easy way to get object instance back after, unless you store it as a global, which is far from ideal. Much more about them:
Amazing PDF books
E-books authored by Josh Pollock for Torque Magazine and sponsored by WP Engine.
- The Ultimate Guide to the WordPress REST API also by Josh Pollock
Webpack all the way
workflow automation tools like Gulp or Grunt are vital for every project that requires web application development. These tools can assist in improving software engineer productivity. Additionally, they are able to automate routine operations such as CSS preprocessing, image compression, etc. And webpack is great for bundling various files together into a dependency graph.
Gulp is more modern compared to Grunt. It does coding vs writing a configuration for Grunt
If you want to save time and use only one workflow automation tool, webpack is the best option in my opinion. Its biggest advantage is that you don’t need to configure everything from scratch.
Interesting WordPress blogs:
- Modern on Codeytek Academy
Blog on WP Developing
see also this note on autoloading
Josh Pollock Articles
Amazing author: Josh Pollock
How To Use WordPress As An Authentication Provider For Laravel - DEV Community this uses the WordPress REST API to check credentials and issue JWT tokens for users without direct access to WP database Headless WordPress with NextJS
More ebooks from him above
Amazing - How to use Codesandbox to develop blocks - Developing WordPress Blocks Without WordPress
Tom McFarlin Articles
Design Patterns in WordPress Writing Helper Functions in Procedural Programming in WordPress | Tom McFarlin Procedural Programming in WordPress | Tom McFarlin Using a Registry, Subscribers, and Services in WordPress | Tom McFarlin Tag: WordPress | Tom McFarlin