Joomla! 4 Masterclass: A practitioner's guide to building rich and modern websites using the brand-new features of Joomla 4
By Luca Marzo and Anja de Crom
()
About this ebook
Unleash the full potential of the Joomla 4.x series while building powerful, responsive, and state-of-the-art websites with real-world use case scenarios
Key Features
Get up and running with all new Joomla 4 features to deliver a rich experience with your websitesEnrich your learning journey while building websites in real time using real-world case studiesCustomize Joomla websites using templates to deliver better user experience to your clients
Book 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 featuresExplore advanced content-handling features like scheduled publishing options, custom fields, and the workflow featureDiscover the search engine optimization features included in Joomla 4Set up your website to handle multiple languages and structure the navigation systemUnderstand the customization features provided by Joomla -- templates, overrides, and child templatesFind out how to use CLI to operate without accessing the CMS backendDesign tailor-made graphics by customizing Joomla templates
Who this book is for
If you are a CMS developer or website designer who knows how to build a website using ready-to-install software, this book is for you. Basic web design knowledge and experience will help you get the most out of this book. If you already know any of the previous versions of Joomla, this book will allow you to discover more about the newer releases. This book will also be beneficial for website holders and managers.
Related to Joomla! 4 Masterclass
Related ebooks
Developing Extensions for Joomla! 5: Extend your sites and build rich customizations with Joomla! plugins, modules, and components Rating: 0 out of 5 stars0 ratingsJoomla! with Flash Rating: 0 out of 5 stars0 ratingsJoomla! 1.5 Development Cookbook: LITE Rating: 0 out of 5 stars0 ratingsHow to Build a Multilingual Website with Joomla! 2.5 Rating: 0 out of 5 stars0 ratingsLearning Joomla! 3 Extension Development: If you have ideas for additional Joomla 3! features, this book will allow you to realize them. It's a complete practical guide to building and extending plugins, modules, and components. Ideal for professional developers and enthusiasts. Rating: 0 out of 5 stars0 ratingsJoomla! 1.5 Development Cookbook Rating: 0 out of 5 stars0 ratingsSymfony2 Essentials Rating: 0 out of 5 stars0 ratingsGetting Started with OpenCart Module Development Rating: 0 out of 5 stars0 ratingsMoodle 3 E-Learning Course Development: Create highly engaging and interactive e-learning courses with Moodle 3, 4th Edition Rating: 0 out of 5 stars0 ratingsSetup Your Joomla 2.5.X Website From Scratch Rating: 0 out of 5 stars0 ratingsOpenCart Theme and Module Development Rating: 0 out of 5 stars0 ratingsMoodle 3.x Developer's Guide Rating: 0 out of 5 stars0 ratingsjQuery UI 1.6: The User Interface Library for jQuery Rating: 0 out of 5 stars0 ratingsBuilding job sites with Joomla! Rating: 0 out of 5 stars0 ratingsInstant .NET 4.5 Extension Methods How-to Rating: 0 out of 5 stars0 ratingsJoomla! Search Engine Optimization Rating: 1 out of 5 stars1/5Joomla! 1.5 Content Administration: Keep your web site up-to-date and maintain content and users with ease Rating: 0 out of 5 stars0 ratingsLearning Behavior-driven Development with JavaScript Rating: 5 out of 5 stars5/5Instant Yii 1.1 Application Development Starter Rating: 5 out of 5 stars5/5Build Gamified Websites with PHP and jQuery Rating: 0 out of 5 stars0 ratingsBuilding Web Applications with Flask Rating: 0 out of 5 stars0 ratingsBuilding Website with Joomla! 2.5: A Game Changer for Young Entrepreneurs Rating: 0 out of 5 stars0 ratingsMoodle Security Rating: 0 out of 5 stars0 ratingsMootools 1.2 Beginners Guide LITE: Getting started Rating: 0 out of 5 stars0 ratingsCreating concrete5 Themes Rating: 0 out of 5 stars0 ratingsMastering Vim: Efficient and effortless editing with Vim and Vimscript Rating: 0 out of 5 stars0 ratings
Internet & Web For You
How to Be Invisible: Protect Your Home, Your Children, Your Assets, and Your Life Rating: 4 out of 5 stars4/5Podcasting For Dummies Rating: 4 out of 5 stars4/5Coding All-in-One For Dummies Rating: 4 out of 5 stars4/5No Place to Hide: Edward Snowden, the NSA, and the U.S. Surveillance State Rating: 4 out of 5 stars4/5How To Start A Profitable Authority Blog In Under One Hour Rating: 5 out of 5 stars5/5Coding For Dummies Rating: 5 out of 5 stars5/5Surveillance and Surveillance Detection: A CIA Insider's Guide Rating: 1 out of 5 stars1/5Social Engineering: The Science of Human Hacking Rating: 3 out of 5 stars3/5Beginner's Guide To Starting An Etsy Print-On-Demand Shop Rating: 0 out of 5 stars0 ratingsThe Gothic Novel Collection Rating: 5 out of 5 stars5/5How To Make Money Blogging: How I Replaced My Day-Job With My Blog and How You Can Start A Blog Today Rating: 4 out of 5 stars4/5The $1,000,000 Web Designer Guide: A Practical Guide for Wealth and Freedom as an Online Freelancer Rating: 5 out of 5 stars5/5How to Disappear and Live Off the Grid: A CIA Insider's Guide Rating: 0 out of 5 stars0 ratingsGrokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5Mike Meyers' CompTIA Security+ Certification Guide, Third Edition (Exam SY0-601) Rating: 5 out of 5 stars5/5The Hacker Crackdown: Law and Disorder on the Electronic Frontier Rating: 4 out of 5 stars4/5Six Figure Blogging Blueprint Rating: 5 out of 5 stars5/5Everybody Lies: Big Data, New Data, and What the Internet Can Tell Us About Who We Really Are Rating: 4 out of 5 stars4/5The Digital Marketing Handbook: A Step-By-Step Guide to Creating Websites That Sell Rating: 5 out of 5 stars5/5Wireless Hacking 101 Rating: 5 out of 5 stars5/5The Beginner's Affiliate Marketing Blueprint Rating: 4 out of 5 stars4/5Remote/WebCam Notarization : Basic Understanding Rating: 3 out of 5 stars3/5The Cyber Attack Survival Manual: Tools for Surviving Everything from Identity Theft to the Digital Apocalypse Rating: 0 out of 5 stars0 ratingsPython QuickStart Guide: The Simplified Beginner's Guide to Python Programming Using Hands-On Projects and Real-World Applications Rating: 0 out of 5 stars0 ratingsTor and the Dark Art of Anonymity Rating: 5 out of 5 stars5/5Learn JavaScript in 24 Hours Rating: 3 out of 5 stars3/5
Reviews for Joomla! 4 Masterclass
0 ratings0 reviews
Book preview
Joomla! 4 Masterclass - Luca Marzo
BIRMINGHAM—MUMBAI
Joomla! 4 Masterclass
Copyright © 2023 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author(s), nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
Group Product Manager: Alok Dhuri
Publishing Product Manager: Harshal Gundetty
Book Project Manager: Prajakta Naik
Senior Editor: Rounak Kulkarni
Technical Editor: Jubit Pincy
Copy Editor: Safis Editing
Project Coordinator: Manisha Singh
Proofreader: Safis Editing
Indexer: Tejal Daruwale Soni
Production Designer: Alishon Mendonca / Ponraj Dhandapani
Developer Relations Marketing Executive: Deepak Kumar and Rayyan Khan
Business Development Executive: Puneet Kaur
First published: January 2023
Production reference:1221222
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.
ISBN 978-1-80323-897-5
www.packt.com
To my grandmother, Gina, for her love and support.
Special thanks to my friends Eugenia and Giovanni, and my sister Erica, for their support on this writing adventure.
– Luca Marzo
Foreword
Powering millions of websites worldwide, Joomla has proven to be one of the major content management systems (CMSes). It’s flexible, versatile, secure, and very stable, and it’s packed with possibilities, right inside the core. Whether you’re a first-time hobby user or a web developer by profession, Joomla 4 (the latest version) offers you a platform you can use to build almost everything you can imagine… if you know how and where to start.
And that is exactly what this book is about. In Joomla! 4 Masterclass, Luca Marzo explains everything you need to know to create any – and by any, I really mean any – kind of website. The book covers information for users at various skill levels, whether creating your first content, customizing the look and feel of your website, using extensions, creating overrides, or using Joomla’s CLI.
If anyone can thoroughly guide you through the many options of Joomla, it is Luca. He has been secretary of Joomla’s board of directors since 2017 and was in several Joomla teams before that (in case you didn’t know, the developers, maintainers, and everyone else working for Joomla are all volunteers). Luca breathes Joomla. He is dedicated, committed, thorough, and meticulous, and he knows virtually everything there is to know. When he told me he was going to write this book, I was thrilled, because I knew it would turn out the way it has: a comprehensive guide for everyone who wants to explore the countless features and possibilities of the world’s most powerful CMS.
Enjoy the ride!
Anja de Crom
Team Leader, Joomla! Community Magazine Team
Contributors
About the author
Luca Marzo is a technology professional with more than 15 years of experience. During his career, he has had the chance to develop websites with Joomla as a freelancer for small to medium-sized companies. He served as an IBMer for 1.5 years. After that, he moved to the web hosting industry. His love for Joomla was born in 2007, a few months after which he started contributing to the Italian Joomla Community. He then progressed to contribute to the global community, where he had the opportunity to serve as the secretary and member of the board of directors for The Joomla Project at a global level for more than 5 years. In The Joomla Project, he has also contributed to the Certification Program, the Community Magazine, and the Extensions Directory.
About the reviewers
Pascal Abatiello is a trainer, editor, and writer. He founded his company in 2012, developing a network of e-learning websites and providing training classes about major CMSes, including Joomla, WordPress, and PrestaShop; SEO techniques; and digital marketing. He’s also the co-founder of Host Academy, a leading e-learning portal that has trained thousands of webmasters and website integrators.
Benjamin Trenkle is a Joomla developer and the owner of Wicked Software, a web development company based in Munich, Germany. He is deeply involved in the Joomla! community, serving as a release lead and production department coordinator. In his free time, Benjamin enjoys programming and volunteering. He is passionate about using his skills to make a positive impact on the world. On his home page, www.wicked-software.de, Benjamin showcases some of his work and extensions and provides information on his services and experience.
Table of Contents
Preface
Part 1 – Joomla! Out of the Box
1
A Powerful and Extensible Core
Technical requirements
The backend application
The backend experience
Exploring the Joomla dashboards
Extensions
Extension types
Extensions management
Exploring the included components
The Banners component
The Contacts component
The News Feeds component
The Smart Search engine
The Tags component
Summary
Further reading
2
How to Manage Content
Exploring articles in Joomla
Creating a new article
Content
Images and Links
Exploring Publishing and SEO settings
Article Options
Exploring the Media Manager
Media editing features
Getting to know categories
Page, post, or article? That is the dilemma!
Exercises
Exercise 1 – categories
Exercise 2 – articles
Summary
3
Advanced Content Management
Enrich your articles with custom fields
What is a custom field?
Custom field groups
Adding custom fields to articles
Adding content to custom fields
Case study – building a directory with custom fields
Planning the structure
Custom publishing workflow
Exploring workflows
Transitions
Basic Workflow
Case study – an online magazine with Joomla
Workflow implementation
Accessibility by default – the JooA11y tool
Exercises
Exercise 1 – Create a custom field
Summary
Further reading
4
Exploring the Flexibility of Modules
What is a module?
Exploring the types of modules
The custom module
Module positions and assignments
Adding a module to your website
Backend modules
Case study – a custom backend dashboard
The scenario
Implementation
Summary
Exercises
Exercise 1 – creating a custom module
Resources
5
Building Your Site Structure: the Menu System
The menu system
Creating a menu
Creating a new menu item
Exploring available menu item types
Menu item options
Menu and SEO configuration
Menu and languages
Summary
Exercises
Exercise 1 – create a menu and a menu item
Exercise 2 – a category list
6
Managing Users and Their Permissions
Users Dashboard
User accounts
Creating a new user account
Editing a user profile
User Groups
Creating a user group
Access levels
Creating a new access level
Managing permissions and privileges
Managing permissions of a component
Managing permissions for a single item
Specifying access permission for items
Users – custom fields
User notes
Mass mail
Built-in privacy features
Privacy Dashboard
Setting a privacy policy
Privacy requests
User Action Log
Summary
Exercises
Exercise 1 – user groups and permissions
Exercise 2 – privacy features
Part 2: Advanced Features
7
SEO at Its Best
Exploring on-page SEO features
Optimizing an article
SEO options offered by menus
Robots management
SEO-friendly URLs
Handling 404 errors
Exercises
Exercise 1 – Friendly URLs
Exercise 2 – Article SEO
Summary
Further reading
8
One Site, Multiple Languages
Building a multilingual website
How to set up a multilingual website
Plugin: System – Language Filter
Plugin: System – Language Code
Checking your website’s multilanguage status
Remove the module that holds the home for all languages
Publishing home pages for each language
Publishing the Language Switcher module
Managing content in multiple languages
Multilingual Associations
A different website for each language
Exercises
Exercise 1 – Set up a multilingual website
Exercise 2 – Multilingual Associations
Summary
Further reading
9
Planning Operations with Scheduled Tasks
What is a Scheduled Task?
Creating a scheduled task
Example – scheduled maintenance window
Example – automatically optimizing your images
Exercises
Exercise 1 – handling planned maintenance
Exercise 2 – calling an endpoint
Summary
Further reading
10
Tailored Communication with Mail Templates
Notifications as a branding item
The Mail Templates feature
Customizing an email template
Case study – customizing the user registration email
Exercises
Exercise 1 – customizing the courtesy Contact Form Mail Copy
Exercise 2 – modifying your emails with your logo
Summary
11
Command-Line Interface
Using Joomla via the CLI
Available commands
Example – managing users through the CLI
Example – updating your site through the CLI
Exercises
Exercise 1 – accessing Joomla’s CLI
Exercise 2 – Scheduled Tasks via the CLI
Summary
Further reading
Part 3: Styling and Securing Your Website
12
Styling Your Website – Templates
What is a template?
Template management – templates
Template management – styles
Example – a powerful frontend template, Cassiopeia
Exploring backend templates
Template positions
Exercises
Exercise 1 – customizing your frontend template
Exercise 2 – creating a new template style
Summary
13
Customize Everything with Overrides
What is an override?
Where to use overrides
Example – overriding the appearance of a single article
Example – overriding the style of a module
Language overrides
Exercises
Exercise 1 – Create a module override
Exercise 2 – Create a language override
Summary
Further reading
14
Child Templates
What is a child template?
Creating a child template
Child templates and overrides
Child templates or duplicated templates
Exercises
Exercise 1 – creating a child template
Summary
Further reading
15
Template Frameworks
What is a template framework?
Why use a template framework
Most used template frameworks
Example – Helix Ultimate
Installing Helix Ultimate
Customizing with Helix Ultimate
Example – T4 Framework
Installing T4 Framework
Customizing with T4 Framework
Example – Gantry
Installing the Gantry framework
Customizing with Gantry
Exercises
Exercise 1 – Use a template framework
Summary
Resources
16
Advanced Features – Access and Security
Setting up passwordless authentication for your website
Multi-factor authentication
Verification Code
YubiKey
Web Authentication
Email Verification
Fixed Code
Enabling multi-factor authentication
Increasing your website security with HTTP headers
Exercises
Exercise 1 – WebAuthn authentication
Exercise 2 – multi-factor authentication
Summary
Further reading
Part 4: Case Studies
17
Case Study – A Corporate Website in Joomla
Introduction
Project goals
Why Joomla?
Reproducing the previous website using another technology
A fast and modern website
Keeping the position
Extensions used
Summary
18
Case Study – Online Academy with Joomla
Introduction
Project goals
Why Joomla?
The solution
Extensions used
Summary
19
Case Study – A B&B Booking System with Joomla
Introduction
Project goals
Why Joomla?
The solution
Extensions used
Summary
Index
Other Books You May Enjoy
Preface
Joomla! 4 Masterclass is a book that explores all the major functionalities of the new version of the software. Joomla is one of the most widely used Content Management Systems (CMSes), powering around 2.7% of the world’s websites. Joomla 4.x, released in the third quarter of 2021, is the new major version of the CMS, coming 9 years after the release of Joomla 3.0, and is packed with many new features that empower website integrators, allowing them to build rich websites with ease.
CMSes such as Joomla allow you to develop a website without having coding skills or a command of the PHP, JavaScript, or CSS language. In many cases, you can build composite layouts visually using a drag-and-drop interface. Furthermore, you can extend a CMS’s functionalities by adding extensions, such as plugins, so that you can transform your website into an online shop, a reservation system, or an e-learning portal. All the major CMSes on the market benefit from a large ecosystem of developers providing extensions and templates to heavily customize a website and satisfy most of the needs of website developers or owners.
This book will show you how to build a website, using the numerous features included in Joomla, and debunk certain myths related to its perceived complexity.
Use of the Joomla!® name, symbol, logo, and related trademarks is permitted under a limited license granted by Open Source Matters, Inc.
Who this book is for
This book is ideal for all those who want to start using Joomla, irrespective of whether they have used a previous version or not. Joomla newcomers will benefit from the inclusion of screenshots depicting the functionalities and step-by-step guides. Experienced Joomla users will be introduced to the brand-new features of Joomla 4, seeing them in action in the examples and analyzing three real case studies.
This book is suitable for either website developers or CMS integrators, as well as website owners that would like to become independent, managing their websites by themselves. Exercises at the end of each chapter allow the readers to apply and test their knowledge.
What this book covers
Chapter 1, A Powerful and Extensible Core, introduces the Joomla core, presenting the backend interface and its main features, and the opportunities to expand its functionalities using extensions.
Chapter 2, How to Manage Content, explores the content management features, explains how to structure content, and compares Joomla’s functionalities with other major CMSes.
Chapter 3, Advanced Content Management, points out some advanced features for handling content, whether scheduled publishing options, custom fields, how to build a custom publishing workflow, or how to produce accessible content.
Chapter 4, Exploring the Flexibility of Modules, explains modules, a basic and flexible element that is used to build both the frontend and backend layouts of the website. Modules can display specific content in a particular position on the website.
Chapter 5, Building Your Site Structure – the Menu System, teaches the reader how to build the navigation system of a website through the menu, build complex navigation structures, handle different menu item lists, manage language associations for multilingual sites, and govern access permissions.
Chapter 6, Managing Users and Their Permissions, demonstrates how to manage user accounts, registration, login, permissions, and much more. Furthermore, it introduces the powerful Access Control List (ACL) system.
Chapter 7, SEO at Its Best, details all the integrated features that can improve the Search Engine Optimization (SEO) of the website.
Chapter 8, One Site, Multiple Languages, illustrates how to build a multilanguage website in Joomla thanks to the built-in features.
Chapter 9, Planning Operations with Scheduled Tasks, presents the tool for scheduling and automating recurring operations on a website.
Chapter 10, Tailored Communication with Mail Templates, shows the reader how to customize default emails sent by their website.
Chapter 11, Command-Line Interface, describes the CLI offered by Joomla, showing how to execute operations on the website through the terminal.
Chapter 12, Styling Your Website – Templates, provides an overview of the templates and shows how to customize the look and feel of a website using Joomla’s options.
Chapter 13, Customizing Everything with Overrides, is all about overrides, a method that allows you to customize how part of a website looks without the need to alter the original template.
Chapter 14, Child Templates, reveals a brand-new functionality of Joomla that allows you to create derived styles and templates, increasing the degree of customization and simplifying maintenance.
Chapter 15, Template Frameworks, goes through the most used template frameworks in Joomla, going through their options and showing how to build a custom style with ease.
Chapter 16, Advanced Features – Access and Security, covers some advanced functionalities dedicated to logging in, multi-factor authentication, and site security hardening.
Chapter 17, Case Study – A Corporate Website in Joomla, makes use of a case study to show how the CMS has been used to build a company’s main website, replacing an old JSP frontend with a fast and lightweight website.
Chapter 18, Case Study – An Online Academy with Joomla, implements another case study with a CMS that has been used to build an e-learning portal that sells and provides access to thousands of online lessons for many students.
Chapter 19, Case Study – A B&B Booking System with Joomla, incorporates another practical example of a CMS that has been used to build the website for a tourist rental flat, implementing a full-featured reservation system integrated with online booking portals.
To get the most out of this book
It’s recommended to set up a personal installation of Joomla that can be either local (for example, using XAMPP) or online (for example, using launch.joomla.org). Using an online free instance would be preferable, as you don’t have to install and configure local web servers.
In the case study presented in Chapter 19, the Pro version of Solidres and some paid plugins were used.
Download the color images
We also provide a PDF file that has color images of the screenshots and diagrams used in this book. You can download it here: https://packt.link/jaQUU.
Conventions used
There are a number of text conventions used throughout this book.
Code in text: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: Simply create a new file under the /css folder of your template called custom.css.
A block of code is set as follows:
.myfooter {
font-size: 13px;
font-weight: 600;
color: #1c77ba;
}
Bold: Indicates a new term, an important word, or words that you see onscreen. For instance, words in menus or dialog boxes appear in bold. Here is an example: From System Dashboard, open Site Templates.
Tips or important notes
Appear like this.
Get in touch
Feedback from our readers is always welcome.
General feedback: If you have questions about any aspect of this book, email us at customercare@packtpub.com and mention the book title in the subject of your message.
Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you have found a mistake in this book, we would be grateful if you would report this to us. Please visit www.packtpub.com/support/errata and fill in the form.
Piracy: If you come across any illegal copies of our works in any form on the internet, we would be grateful if you would provide us with the location address or website name. Please contact us at copyright@packt.com with a link to the material.
If you are interested in becoming an author: If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, please visit authors.packtpub.com.
Share Your Thoughts
Once you’ve read Joomla! 4 Masterclass, we’d love to hear your thoughts! Please click here to go straight to the Amazon review page for this book and share your feedback.
Your review is important to us and the tech community and will help us make sure we’re delivering excellent quality content.
Download a free PDF copy of this book
Thanks for purchasing this book!
Do you like to read on the go but are unable to carry your print books everywhere?
Is your eBook purchase not compatible with the device of your choice?
Don’t worry, now with every Packt book you get a DRM-free PDF version of that book at no cost.
Read anywhere, any place, on any device. Search, copy, and paste code from your favorite technical books directly into your application.
The perks don’t stop there, you can get exclusive access to discounts, newsletters, and great free content in your inbox daily
Follow these simple steps to get the benefits:
Scan the QR code or visit the link below
https://packt.link/free-ebook/9781803238975
Submit your proof of purchase
That’s it! We’ll send your free PDF and other benefits to your email directly
Part 1 – Joomla! Out of the Box
In this part, you will get an overview of the Joomla Core and its functionalities. You will discover the features included in the Content Management System