Ever wondered how Joomla sections and categories and the frontpage all fit together? Or maybe how the menus modules are arranged, or how to get around the 2-category limit? I see these questions a lot so I’ve put together a PDF of diagrams to help explain how all these things work in Joomla. Understanding the Structure of Joomla is an invaluable reference PDF for all web site masters wanting to set up a Joomla web site.

Sending mail is a common requirement for components and plugins in Joomla. There are two ways to send mails. The first way using a utility helper method. The second way is using Joomla mail API, based on PHPMailer, to provide more control over the message that will be sent. We will also cover the mail filtering methods.

Logging to files in Joomla

Joomla provides a utility class for logging information to files called JLog. This class provides a means to create files in common log format for any number of purposes such as:

Joomla plugin overview

Joomla! plugins serve a variety of purposes. As modules enhance the presentation of the final output of the Web site, plugins enhance the data and can also provide additional, installable functionality.

Joomla plugin localisation

The language file to localise the administrator management must be located with the administrator language files.

Handling errors in Joomla plugins

The JDispatcher::trigger method will return an array of results from the all of the plugins executed for a particular event. In general plugins return a boolean state so it’s easy to scan the result array for a value of false. However, this doesn’t provide any useful information that you can return to the user about what might have caused a failure.

Understanding Joomla sessions

The session lifetime is controlled by the lifetime configuration variable that is set in configuration.php. The value is the number of minutes you want sessions to remain alive when a visitor is using the website.