Chapters
Part 1: Developing Components
Chapter 1
Planning your component, introduces the problem we want to solve and provide a simple methodology to plan the development for our extension. It also defines the database architecture that we are going to use in the book.
Chapter 2
Developing the backend of a basic Joomla component starts the development of the backend part of a Joomla component. It introduces Joomla 5 MVC architecture and the new Joomla development paradigm.
Chapter 3
Developing the frontend of a basic Joomla component, shows how to develop the frontend area of our component. It introduces Joomla Routing and It introduces how to use Joomla Web Assets Manager to add Styles and JavaScript to our component.
Chapter 4
Forms in Joomla, provides an overview on using forms in Joomla. It shows how to create our forms using Joomla API methods. It also covers Joomla standard form fields and how to develop our own form fields. Finally it shows how we can add server side and client side validation to our forms.
Chapter 5
Harnessing the power of Joomla in your component, provides a guide on the Joomla core features we can use in our developments. It shows how to add Joomla core permissions to our component using Joomla ACL, it covers how to add Joomla Categories to our component. This chapter also demonstrates how to integrate Joomla custom fields in our extension and how to use Joomla translation system.
Chapter 6
Adding a Web Service API to your component, it introduces Joomla Web Service API. It also shows how to develop a Web Service endpoint for our extensions.
Part 2: Developing Modules and Plugins
Chapter 7
Developing a module, It shows how to develop a Joomla module using the new Joomla architecture. It also introduces module helpers to develop more complex modules.
Chapter 8
Developing a plugin, It introduces Joomla plugins and shows the new plugin architecture. It explains how to trigger plugin events and it covers how to develop plugins for our component.
Chapter 9
Adding a CLI to your component, It introduces Joomla Command Line Interface usage. It also covers how to develop a console command for Joomla, style its output and include parameters in the command.
Part 3: Extending Templates
Chapter 10
Template Overrides, It shows how to change any Joomla template to meet your design specifications using template overrides. It also explains how to expand components adding extra views.
Chapter 11
Creating a child template in Joomla, It introduces Joomla template development through the new child template feature.
Part 4: Distributing Your Extensions
Chapter 12
Testing your extensions, It shows how we can include PHP unit testing to our Joomla extensions. It introduces Test Driven Development paradigm. It also covers how to create integration tests for your Joomla component using Codeception. Finally it explains how to test accessibility in your developments.
Chapter 13
Security practices in Joomla, It covers Joomla measures to secure your developments and provides useful tips to avoid common exploits. It also introduces the JED Checker tool for further checks.
Chapter 14
Distributing your Joomla extensions, It explains the manifest files for our extensions and it shows how to create a package for them. It also covers how to include an update server for our extensions. Finally, the chapter describes the mechanism built in Joomla to allow updating extensions that are behind a paywall.