Book Image

Developing Extensions for Joomla! 5

By : Carlos M. Cámara Mora
5 (2)
Book Image

Developing Extensions for Joomla! 5

5 (2)
By: Carlos M. Cámara Mora

Overview of this book

Joomla! 5 is a groundbreaking CMS that helps you take a significant leap into the world of content management systems. Joomla! 5 features a variety of impressive new features that align with current web standards and enable you to experience lightning-fast performance for optimal web page optimization, leverage the new code architecture, and tap into the WebService API, among others. This book takes you on a journey of extending Joomla's capabilities by developing your own extensions. The chapters not only explain the key concepts behind Joomla's architecture but also equip you with the latest techniques for crafting components and plugins. You’ll discover how to leverage existing features within Joomla! to empower your extensions and create tailored solutions. The book takes you from the initial stages of planning your extension development to a fully featured finished product. As you advance, you'll learn invaluable techniques for testing your extension, addressing common issues, and preparing it for publication. The concluding chapters of this comprehensive guide teach you how to test your extension for common issues, along with how to publish the extension for everyone to use. By the end of this book, you’ll have the confidence and skills to complete the cycle of extension development.
Table of Contents (21 chapters)
1
Part 1: Developing Components
8
Part 2: Developing Modules and Plugins
12
Part 3: Extending Templates
15
Part 4: Distributing Your Extensions

Developing a frontend list view for our component

Using Joomla’s Model-View-Controller (MVC) pattern simplifies extension development in Joomla!. The file structure for the frontend is like the one for the backend, with just a few minor changes.

We will start with the frontend area of our component, by recreating the folders inside the site folder, as shown in the following figure:

Figure 3.1 – The folder structure for the frontend part of our component

Figure 3.1 – The folder structure for the frontend part of our component

We are coding in the frontend part of our component, so we will store our files inside the src/component/site/ folder. And, as with the backend, we have the following folders:

  • src
  • tmpl

In the src folder, we repeat the same folder structure as in the backend:

  • Controller
  • Model
  • Service
  • View

The files and their content are also like the ones in the backend. Let’s start adding the files for the list view.

Coding the list view

Even though...