Search icon
Arrow left icon
All Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletters
Free Learning
Arrow right icon
Joomla! 4 Masterclass
Joomla! 4 Masterclass

Joomla! 4 Masterclass: A practitioner's guide to building rich and modern websites using the brand-new features of Joomla 4

By Luca Marzo
€21.99 €14.99
Book Jan 2023 338 pages 1st Edition
eBook
€21.99 €14.99
Print
€27.99
Subscription
€14.99 Monthly
eBook
€21.99 €14.99
Print
€27.99
Subscription
€14.99 Monthly

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Buy Now

Product Details


Publication date : Jan 13, 2023
Length 338 pages
Edition : 1st Edition
Language : English
ISBN-13 : 9781803238975
Category :
Concepts :
Table of content icon View table of contents Preview book icon Preview Book

Joomla! 4 Masterclass

A Powerful and Extensible Core

One of the major characteristics of Joomla is represented by its core: a modern and robust web application that integrates many features and allows you to plan, build, and manage a complete website without the need to use a high number of extensions.

There have been several discussions over the years within the Joomla development team about decoupling features from the core in favor of a more lightweight core. However, over the years, the application has been constantly enriched by powerful and useful functions.

As of the 4.x version, Joomla includes features to create, organize, handle, and enrich articles and content, which is its primary scope. Plus, it offers a series of additional functions to build multilingual websites, manage users, build publishing workflows, handle media files, and customize the appearance of websites.

Furthermore, the main advantage of Joomla is its extensibility, allowing a website administrator to install additional features through third-party extensions to build complex websites and rich applications.

After reading this chapter, you will have gained the following capabilities:

  • An understanding of the Joomla backend application
  • To know what a Joomla extension is and the different types of extensions available
  • To be familiar with the extensions shipped with the basic Joomla package

Technical requirements

To complete the exercise proposed in this section of the book, you need to have a Joomla instance installed on a Linux, Apache, MySQL, PHP (LAMP) stack, either locally or remotely. You can easily install Joomla following the instructions published at https://docs.joomla.org/J4.x:Installing_Joomla.

If you don’t have an online hosting, you can launch a Joomla instance online for free using the official service at https://launch.joomla.org.

Note

LAMP is commonly used to refer to a Linux-based hosting environment, on either local, shared, or dedicated hosting, which offers Apache, PHP, and MySQL services.

Once you have your instance up and running, you can log in to the backend section of the website, accessible from <yoursiteurl.tld>/administrator. This represents the Joomla backend application that we’ll explore in depth in the next section.

The backend application

Joomla comprises two interconnected applications: a frontend application and a backend one. The frontend is the part of the system that is visible to website visitors. The backend is the part of the system that is used by the webmaster or the administrator to configure, build, and manage the website.

The backend is also the area that hosts most of Joomla’s functionality. These features include, but are not limited to the following:

  • Log-in/log-out
  • Article management
  • Category management
  • Media management
  • Custom fields
  • Module management
  • Menu management
  • Updates management
  • Extensions management
  • Users management
  • Permissions management
  • Template management
  • Language management
  • Application configuration

Joomla also exposes a wide set of APIs that allow extension developers to integrate core features (for example, category management) into their extensions, providing administration users with a consistent experience within the backend application.

Throughout this book, we’ll go through the features offered by the Joomla core and explore their options and the possibilities they provide.

The backend experience

One of the novelties introduced in Joomla 4 is a completely redesigned backend user experience, with a collapsible sidebar menu that replaces the previous horizontal top-bar drop-down navigation system provided by Joomla until version 3.10.

Figure 1.1 – The Joomla 4 dashboard

Figure 1.1 – The Joomla 4 dashboard

The new backend design found its origin in UX research conducted by Elisa Foltyn, who published a draft of the administration experience in the Joomla Community Magazine in December 2017 (A new User Interface for the Joomla Backend, Episode IV, https://magazine.joomla.org/all-issues/december-2017/episode-iv-a-new-user-interface-for-the-joomla-backend). The draft and preview were discussed extensively among the community and core developers, with the final version being slightly different from the original proposal. However, some key concepts are implemented in what we can now appreciate as Atum, the backend template.

Now that we know a little about the backend, let’s go on to explore the various menus in the dashboard.

Exploring the Joomla dashboards

Beyond the left sidebar menu for administration, Atum features another new concept to Joomla: dashboards. Dashboards have been introduced to provide a summary page where users can access all the relevant features for a specific area. Some of the dashboards are pre-defined and available to all Joomla administrators upon installation, for example, the Content Dashboard, Users Dashboard, Components Dashboard, Menu Dashboard, and System Dashboard:

Figure 1.2 – Components Dashboard

Figure 1.2 – Components Dashboard

As shown in the preceding screenshot, dashboards are a collection of links to useful resources and functions. Let us explore these dashboards to see what each one has to offer.

Content Dashboard

In Figure 1.3, we can see the Content Dashboard, which allows us to access all the most common features to manage content.

Figure 1.3 – Content Dashboard

Figure 1.3 – Content Dashboard

The dashboard includes the following links:

Table 1.1 – Content Dashboard

Table 1.1 – Content Dashboard

To summarize, the Content Dashboard allows an administrator to access almost all aspects of content management for the website, thanks to direct links to the features.

As we can see in Figure 1.3 and Table 1.1, the dashboard can be completely customized. In fact, the administrator can add, move, and remove modules in the Content Dashboard, as well as in any other of the pre-defined dashboards. This is particularly important as it allows the administrator to build a personal backend experience, with custom modules and dashboards that are tailored to their specific needs.

Also, as we’ll understand further in this book, every block (module) includes Permissions management features, allowing the site administrator to create personal dashboards also based on the permission level, differentiating the backend experience for the different access levels and permissions.

Next, we’re going to explore the the Home Dashboard.

Home Dashboard

The Home Dashboard is a special dashboard that is shown right after logging in to the backend of the website:

Figure 1.4 – The Home Dashboard serving as the control panel

Figure 1.4 – The Home Dashboard serving as the control panel

It allows the administrator to quickly access the most used and useful features, as well as to instantly check the status of the website. Let us explore a few of these in detail, starting with the Site module.

The Site module

From the Site module under Home Dashboard, the administrator can access the following options:

  • Users
  • Articles
  • Article Categories
  • Media
  • Modules
  • Plugins
Figure 1.5 – The Site module

Figure 1.5 – The Site module

Another key module in this dashboard is the Latest Actions module.

The Latest Actions module

The Latest Actions module shows the five most recent actions executed by users and administrators on the website. The module takes data from the User Action Log feature included in User Management, which we will see later in the book.

The System module

Toward the right side of the screen, we can find the System module.

Figure 1.6 – The System module

Figure 1.6 – The System module

As you can see in the preceding figure, this module displays three buttons:

  • Global Checkin: This option allows you to check whether some items are locked in the database (for example, articles and contacts)
  • Cache: This option allows you to check the status of the system cache and purge it
  • Global Configuration: This option allows you to access the Global Configuration screen

Next comes the Notifications module.

The Notifications module

The Notifications module shows four status icons/buttons, as seen in the following screenshot:

Figure 1.7 – The Notifications module

Figure 1.7 – The Notifications module

Let us look at what each of these does:

  • Joomla! Update Status: This area checks and provides notifications on the availability of an update for the CMS
  • Available Updates: This section checks and notifies the user of the availability of updates for any of the installed extensions
  • Override(s) to check: This section notifies the administrator about the need to verify whether an update of the CMS files may have caused the overrides to be obsolete
  • Privacy Requests: This section shows whether there are any privacy information or deletion requests that are classified as urgent

In Figure 1.7, the status is up to date, but the notifications change based on the status.

Note

The threshold to classify a request as urgent is completely customizable. We will discuss the core privacy features in Chapter 6 of the book.

Next, let’s look at the Privacy Dashboard.

Privacy Dashboard

The Privacy Dashboard module shows the list of the most recent privacy information or deletion requests. Just like the notification icon presented in Figure 1.7, this module is also directly connected to the Privacy Tool Suite of features that were introduced in Joomla in version 3.9. We will explore the privacy features in depth in Chapter 6.

Logged-in Users

The Logged-in Users section displays the list of users that are currently logged in to the system, either in the frontend or backend applications. The application to which they are logged in is displayed next to the name of the user. For users logged in to the website frontend, the administrator can also log them out.

The Recently Added Articles module

The Recently Added Articles module shows the list of the latest articles created on the website, together with their author and date of creation.

In addition to this, there is the Popular Articles module, which shows the most-read articles on the site.

Toward the bottom of the dashboard, there is a button that allows you to add a module to it so that you can customize the appearance of the dashboard. Moreover, each of these modules can also be customized/edited and rearranged in another position or unpublished.

With this module, we have completed the exploration of the Home Dashboard. We will now explore another useful dashboard, the System Dashboard.

System Dashboard

Another special dashboard is the System Dashboard, which collects all the principal options to set up and configure the Joomla installation:

Figure 1.8 – System Dashboard

Figure 1.8 – System Dashboard

This dashboard is made up of modules that cannot be edited or unpublished since it is the only path to access some specific features of the application.

Let’s explore the commands and options provided by the System Dashboard:

Table 1.2 – System Dashboard

Table 1.2 – System Dashboard

Once again, it is possible to add additional modules to this dashboard to customize its appearance.

We’ll now move on to another important dashboard, the Component Dashboard.

Component Dashboard

The Component Dashboard represents the access point to the installed components, which we’ll explore later in the chapter. This dynamic dashboard will grow automatically as we install other components on our websites.

The dashboard is made up of the same links to component parts that can be found under the Components menu in the sidebar.

Every installed component has a specific menu that allows the administrator to access a specific page or function.

For example, the Contacts component that is included by default in any Joomla installation has four links both in the Components Dashboard and in the Components menu. These links allow you to do the following:

  • Open the list of created contacts
  • Open the list of categories of contacts
  • Open the list of custom fields for contacts
  • Open the list of groups of custom fields for contacts

There is no standard number of menu items for each component, as the needed number is specific to the needs of the component.

Extensions

As mentioned at the beginning of this chapter, Joomla is a flexible CMS that allows you to extend its functionality with the help of additional software that can be installed on top of its core. Extensibility is a common feature for a CMS and has been key to the success of Joomla. In fact, this aspect allowed the growth of an extensions developer ecosystem, which has resulted in thousands of extensions being published over the years.

So, what is an extension? As the name suggests, an extension extends the CMS, providing additional functionality.

Possible examples are that you need to install a specific extension to add e-commerce features to your Joomla installation, or you need to install a photo gallery extension to build galleries easily on your website.

Extension types

In contrast to the other CMSs, Joomla makes use of several types of extensions. In fact, in Joomla you can have the following extension types:

  • Components
  • Modules
  • Plugins
  • Libraries
  • Packages
  • Templates

There are several differences between the types of extensions, and we will explore each one in brief here (you can refer to the Further reading section at the end of this chapter to learn more about these extensions).

Components

Components are mini applications. If you consider Joomla to be your website operating system (OS), you can consider a component as an application that you install on your OS. Components are installed to add features to the website and have two parts—an administration part, accessible via the backend of Joomla, and a site part, accessible through the website frontend.

Several components are provided in the core installation of Joomla, including Contacts, Tags, News Feeds, and Banners, which we will explore in a separate section.

You will need a component to add the following features:

  • Backup
  • E-commerce
  • Newsletter

When you install an extension that adds specific functionality, it generally includes a component and other parts such as modules, plugins, and libraries.

Modules

Modules are used to display information or render data from components. They are used to build the page layout, showing specific features, such as the login module and the latest articles modules. Modules are assigned to menu items so that you can show a module on specific pages of the website. It is also possible to create custom HTML modules to show information or custom code.

Modules are used extensively in the backend and the frontend of the website.

Plugins

Plugins are the smallest type of Joomla extensions and provide features associated with trigger events. That means that when an event (for example, a page load) occurs, the function provided by the plugin is triggered.

There are multiple categories of plugins, based on the event type with which they are associated, for example, users, system, content, and authentication.

Also, any extensions can add custom events that trigger the action of specific plugins.

Libraries

Libraries are additional packages of code that provide a group of functionalities. Also, Joomla includes a series of external libraries to provide some features, for example, PDF export features, jQuery, PHPMailer, and a rapid application development framework.

Packages

Packages are a particular type of extension that allows administrators to install multiple extensions at once. For example, if an extension comprises a component, some modules (frontend and backend, for instance), and some plugins, it is common for the developer to provide just a single package. This way, it is easier to install the extension with all the needed pieces at the same time instead of executing multiple installations.

Templates

Templates are a type of extension that dictates how a website looks. There are two different types of templates: frontend templates and backend templates.

Frontend templates are used on the publicly accessible side of a website. The default frontend template for Joomla 4 is Cassiopeia.

Backend templates are used to render the administration interface. Atum is the default backend template for Joomla 4, and it is the one visible in the screenshots included in this chapter.

Extensions management

The backend application of Joomla includes several functions to manage extensions, allowing the administrator to conduct the following operations:

  • Install a new extension
  • Update an extension
  • Delete an extension
  • See the list of installed extensions

All extensions, whether downloaded for free or paid, are provided in the .zip file format and can be installed through the dedicated function in the Joomla backend.

The extensions management features are accessible through the System Dashboard.

The Joomla! Extensions Directory

From the backend of the application, you can access the Install from Web feature, which allows you to install any of the thousands of extensions published on the Joomla! Extensions Directory. This is a web portal in which third-party developers publish their extensions, either free or paid.

Extensions will add to your website additional features and capabilities, on top of those included by default. In the next section, we will explore the components included in the standard Joomla setup.

Exploring the included components

By default, Joomla includes a bunch of components, as well as other extensions, providing some basic features. Let’s explore the components shipped with the default package.

The Banners component

Banners is a component that allows an administrator to manage advertising banners on their website. Banners are a piece of content that might include media and/or text that contains advertising material. For each banner, the component allows you to set up the maximum number of impressions and the type of advertising strategy (for example, periodic or unlimited). Each banner should be linked to a client. The number of times a banner is displayed on the website (impressions) and the number of clicks on the banners are tracked by the component.

Banners might be placed in modules on the website frontend, such as common advertising that we are used to seeing on many websites nowadays.

The Contacts component

Contacts is one of the most used components in Joomla. It allows you to create contacts and provide a contact form for each of the contacts created. It is used to handle an address book of the different contacts of a company, allowing users to write to the desired person through a contact form published on the website frontend. Contacts can be organized into categories and can be enriched with additional custom fields.

The News Feeds component

News Feeds is a component that allows an administrator to integrate content from other websites. It gets as input an RSS feed and can import the content from a third-party website. Such external content might be displayed in a frontend module. For example, a local news website could use the News Feeds component to provide additional national news to their readers, importing RSS feeds of a national news provider.

The Smart Search engine

Smart Search is the internal search engine of Joomla. Smart Search indexes automatically, if enabled, the contents of the website and provides pertinent search results upon request to website users through a search engine module.

It is a comprehensive solution to index the content and provides users with an OpenSearch-compatible search engine. Administrators can extend the types of indexable content through additional plugins, allowing the component to index products, users, and much more.

The Tags component

Tags is a supporting component that allows administrators to introduce an additional level of categorization to their content. Tags are used to mark related content, surpassing the limit of a category for each item. Also, the same tag can be applied to content items across content types.

Tags are like labels that can be applied to content items. The component is used only to create, list, and manage tags.

Summary

In this chapter, we have discovered the overall experience offered by the backend of Joomla, which tools it provides, and how it is structured. We have also learned what dashboards are available in the backend and how they can be customized to fit the needs of any website administrator.

After reading this chapter, you have learned how to navigate the backend of Joomla, understand the difference between the types of extensions available, and know the basics of the components shipped in a default Joomla installation. In the next chapter, we will go in-depth into the content management features.

Further reading

Left arrow icon Right arrow icon

Key benefits

  • Get up and running with all new Joomla 4 features to deliver a rich experience with your websites
  • Enrich your learning journey while building websites in real time using real-world case studies
  • Customize Joomla websites using templates to deliver better user experience to your clients

Description

Joomla has been the second-most used open-source content management system for years. It has always had many built-in features, but several of them are not very well-known in the market. This book brings to you all the major features of the Joomla 4.x series that’ll enable you to build your own website and CMS on Joomla. The book begins by introducing you to the content management features that represent the hearth of the software and show you how to structure your website content to get the most out of it. You’ll also find out how to extend your content with custom fields, go multilingual, and set up your custom workflow. As you advance, you’ll learn all about the customization of the website, introducing templates, and child templates and overrides that’ll allow you to make your site unique. The concluding chapters will take you through four different case studies, including an online learning system, a B&B booking system, and corporate and editorial websites to see how Joomla has been used in real life to achieve a specific goal for your clients. By the end of this book, you’ll be able to confidently build modern websites on Joomla to deliver tailor-made solutions to your clients.

What you will learn

Build your websites using Joomla 4’s enhanced features Explore advanced content-handling features like scheduled publishing options, custom fields, and the workflow feature Discover the search engine optimization features included in Joomla 4 Set up your website to handle multiple languages and structure the navigation system Understand the customization features provided by Joomla -- templates, overrides, and child templates Find out how to use CLI to operate without accessing the CMS backend Design tailor-made graphics by customizing Joomla templates

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
Buy Now

Product Details


Publication date : Jan 13, 2023
Length 338 pages
Edition : 1st Edition
Language : English
ISBN-13 : 9781803238975
Category :
Concepts :

Table of Contents

26 Chapters
Preface Chevron down icon Chevron up icon
Part 1 – Joomla! Out of the Box Chevron down icon Chevron up icon
Chapter 1: A Powerful and Extensible Core Chevron down icon Chevron up icon
Chapter 2: How to Manage Content Chevron down icon Chevron up icon
Chapter 3: Advanced Content Management Chevron down icon Chevron up icon
Chapter 4: Exploring the Flexibility of Modules Chevron down icon Chevron up icon
Chapter 5: Building Your Site Structure: the Menu System Chevron down icon Chevron up icon
Chapter 6: Managing Users and Their Permissions Chevron down icon Chevron up icon
Part 2: Advanced Features Chevron down icon Chevron up icon
Chapter 7: SEO at Its Best Chevron down icon Chevron up icon
Chapter 8: One Site, Multiple Languages Chevron down icon Chevron up icon
Chapter 9: Planning Operations with Scheduled Tasks Chevron down icon Chevron up icon
Chapter 10: Tailored Communication with Mail Templates Chevron down icon Chevron up icon
Chapter 11: Command-Line Interface Chevron down icon Chevron up icon
Part 3: Styling and Securing Your Website Chevron down icon Chevron up icon
Chapter 12: Styling Your Website – Templates Chevron down icon Chevron up icon
Chapter 13: Customize Everything with Overrides Chevron down icon Chevron up icon
Chapter 14: Child Templates Chevron down icon Chevron up icon
Chapter 15: Template Frameworks Chevron down icon Chevron up icon
Chapter 16: Advanced Features – Access and Security Chevron down icon Chevron up icon
Part 4: Case Studies Chevron down icon Chevron up icon
Chapter 17: Case Study – A Corporate Website in Joomla Chevron down icon Chevron up icon
Chapter 18: Case Study – Online Academy with Joomla Chevron down icon Chevron up icon
Chapter 19: Case Study – A B&B Booking System with Joomla Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Filter icon Filter
Top Reviews
Rating distribution
Empty star icon Empty star icon Empty star icon Empty star icon Empty star icon 0
(0 Ratings)
5 star 0%
4 star 0%
3 star 0%
2 star 0%
1 star 0%

Filter reviews by


No reviews found
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.