In this chapter, we will cover some of the fundamental concepts any Joomla site administrator should know. We’ll mainly be focusing on the site’s global configuration and talk in more detail about the different extension types.
Administration Panel Overview
The administration panel is the section of the website where users with back-end permission can log in and make changes to the site. The types of changes we can make depends on our user access level. As a super administrator, we can make any changes we want. There are other user groups with varying permissions but we will focus on them later.
You can login to the administration panel by navigating to your website and typing /administrator in the address bar. If you’ve been following along, we have been using XAMPP to host our installation of Joomla locally. So our admin panel is at localhost/administrator. When you get to this page, you should see a login form. Here you can log in using the username and password you created when you setup the website. If you installed Joomla with third party tools, such as a one click web installer through your web hosting company, they should have provided login details when you created the installation.
Navigate to your administrator directory in a web browser and log in.
When you first login, you will likely see a message saying “Joomla! would like your permission to collect some basic statistics.” This is entirely up to you. I’m at a point where I’m not going to lose any sleep over another company collecting data from me, so I just decided to enable it. You do you.
Although you can use the Joomla Admin Panel on mobile, and they have tried to make optimizations for it, you’re going to have a much better time working with it on a full size computer, or at least a large tablet. I would only recommend using the admin panel on a smartphone if it’s your only option, or you’re just trying to make a small, last minute change.
The Home Dashboard
The Home Dashboard is the first screen you come to after logging into the admin panel. It contains different admin modules which can be customized and rearranged. Some of these modules are more useful than others. Take a look at the overview of it all below. Don’t be overwhelmed by all the options. We won’t even be using half of them to start.
Modules can easily be removed by selecting the gear icons next to them and choosing the “unpublish” option. This doesn’t delete the module in its entirety, but it prevents it from loading in the dashboard.
I would start by removing the Sample Data module. You’re welcome to try installing the sample data on your own, but it will complicate things down the road. For the sake of simplicity, it’s best to learn in a fresh, clean environment. We don’t want to start with an information overload. Click the gears next to “Sample Data” and unpublish this.
The only really important modules here are the “Notifications” module and the “Privacy Dashboard.” The notifications module checks for extension and Joomla updates, so keep an eye out here. There may be security issues present in old code running on your site and you’ll want to update right away. The Privacy Dashboard will show you if any of your users has requested privacy information. In the EU, websites are required to provide a way for their users to download and delete all the data you have stored on them in your website. In the US, you may largely ignore this if you’d like, though it’s still a nice feature to have. Even though I’m based in the US, I have decided to retain these privacy features in case my users want to delete their accounts for whatever reason.
Everything else is mainly fluff on this page put there in an effort to make Joomla look more user friendly by the development team. You may find some of the shortcuts initially useful. I find myself never really using them. You likely won’t use them much once you get the hang of it. Once you install third party extensions, you may find more modules that are useful to have here. This could be a useful place to post internal messages if your site has multiple authors or administrators in the future.
Post Install Messages
The “Post Install Messages” has a notification showing how many messages are in there from the Joomla dev team. While they may eventually post something interesting here, they’re mostly old and somewhat irrelevant messages. If you’d like to get rid of them, click the link to open the messages at the top of the screen and select “Hide all messages.”
Section Dashboards
You may notice the little square icons that look kind of like the Windows logo next to some of the menu items. These link to individual dashboards for each section. You can add or remove modules for each section the same way you can with the main home dashboard. The idea is this can improve your workflow, depending on what you’re doing. I never use them as I find the administrator modules somewhat lacking, but perhaps with third party extensions, they’ll get better over time and become more useful pages.
Global Configuration
The Global Configuration is arguably the most important part of the admin panel. This is where we can make changes that affect the entire site, how it performs, how it interacts with search engines, and more. You can think of it as the equivalent of the Control Panel (or Settings App) in Windows, or the System Preferences in Mac. Some of the important settings we set up with the installer, such as the database connection, database login, and site name, can be changed here. I’ll be shortening it to “global config” for this section.
You can open the Global Configuration by clicking the shortcut in the home dashboard or by clicking “System” in the side menu and then “Global Configuration.”
You should familiarize yourself with all the settings available in the Global Configuration, and know what they each do. I will highlight the items I think are most important in bold. Some settings you can largely ignore. For this series, if you just read the items in bold and gloss over the rest, you’ll be fine. You can always return to this page to reference the settings. There are a lot of settings and you don’t need to know every single one yet.
The Site Tab
The first tab you get to in the global config is the site tab. This tab contains some important identifying site info and default settings you may want to change.
Site Group
The site field group contains various, somewhat unrelated, default site settings.
- Site Name: The name of your website. You may change it at any time.
- Site Offline: You can make your site offline to the public by using this. This may be useful if you’re rolling out big changes and need to take the site down for a couple hours.
- Frontend Editing: Joomla has a way to let you change modules and positioning from the front end. It’s not exactly a drag and drop WYSIWYG type deal though. It essentially shows you the module settings from the backend in the front end when you’re logged in as an admin. Personally, I think the module editing is better done in the back end, and would turn this feature OFF.
- Default Editor: This is the default content editor Joomla uses across the site. You’ll use it to add and edit articles and such. TinyMCE, the default one, is fine for now. There’s another one called CodeMirror which is for web developers that know HTML. There are also several third party editors you can install and try out.
- Default Captcha: You can add captcha (those annoying puzzles you see sometimes) to your website to prevent spam bots and such. We will discuss this later. For now, leave it at none. Additional configuration is required if you want to use these.
- Default Access Level: This is the default access level which will be set to content items you publish. It is not the access level for the entire site. Say, for example, you set the default access level to “registered” and write a new article. By default, that article will have an access level of “registered” and only registered users will be able to view it. It does not modify the access level of existing content. The access level for each piece of content and menu items is individually set. I’d leave this public if you plan on having an open website. You’d likely change it to registered if you’re running a website that uses paywalls to restrict content or if you’re using your website for internal business purposes and don’t want the general public to see your posts.
- Default List Limit: This determines how many items are shown on each page when we’re looking at overviews of multiple items. For example, if you’re in a category with 100 articles, it would split it up into 5 pages of 20 articles. The higher you set this, the more demand you’re putting on the database server each time the page loads the items. 20 is a good starting number.
- Default Feed Limit: This relates to RSS and Atom feeds, which are a way to update people on new articles and such with “feeds” of information. Few people use these feeds anymore, so I’d ignore this entirely, unless there’s a particular requirement you’re dealing with or you’re catering to a very specific audience that still uses them.
- Feed Email: The email attached to the RSS/Atom feed, if you’re using feeds, which you probably aren’t.
- Block FLoC: FLoC is an alternative to tracking users with cookies for advertising. It’s essentially irrelevant at this time. I’d just leave it blocked.
Metadata Group
The Metadata group of fields contains settings for your site’s default metadata. Metadata is used by search engines and other entities to learn about the contents of your website. It’s important that each page on your site has good metadata so Google and other search engines can index it, if your goal is to get traffic. If your goal is to keep your website hidden and private, you might need to make some changes here.
- Site Meta Description: A short, concise description of your website for search engines.
- Robots: Allow search engines “bots” to scan your site and index it in their databases. Follow means they can read the contents and use them in search results as well. If your goal is to get traffic, you’ll want to leave this on index, follow. If there are certain special pages you don’t want indexed, you can manually change that on a per-page basis later. If you don’t want your site to show up in search results at all, select noindex, nofollow.
- Content Rights: You can put info about other’s rights to use your content here. Licenses and such.
- Author Meta Tag: Each article has an author. Show this in metadata or not?
- Show Joomla Version: Shows the version of joomla in the metadata about how the page was generated. I don’t see a point in turning this on.
SEO Settings
The SEO group contains settings related to search engine optimization (SEO). Leave these settings alone for now.
- Search Engine Friendly URLS: Optimizes the URLs for search engines. Probably leave this yes.
- Use URL Rewriting: We can rewrite URLs to match the search engine friendly URLs. We will talk about this more later in the site navigation chapter. Leave off for now, but this is something we will probably want to turn on later.
- Add suffix to URL: This adds things like .php to the end of addresses. Leave this off. Only old school websites use suffixes these days.
- Unicode Aliases: This pertains to sites in different languages. You can ignore it if you only plan on using English.
- Site Name in Page Titles: Page titles are what’s shown in the browser on each tab you have open. By default, it shows the menu title for the page the user is on. This is usually more useful information to the user than the site name. The site name will take up unnecessary space in the page title. This is ultimately up to you.
Cookies
The cookie settings pertain to how cookies are valid with user sessions across your website and the subdomains. You don’t need to worry about this for now, and likely won’t need to make any changes here.
The system tab contains settings related to how your site will handle sessions, performance, and errors. It’s the settings for the system of Joomla itself.
- Debug Settings
- Debug System: Usually best to leave on no unless you’re a developer, or need to find a particular issue related to database queries going wrong. Should be turned off on production sites.
- Debug Language: Shows indicators when language files are being used. It’s another developer tool you likely won’t have to worry about.
- Cache Settings
- System Cache: The cache allows the site to temporarily store data for easy access. This improves performance and makes your website faster. If you’re actively updating your website and making lots of changes, you’ll probably want to leave this on off. If you turn it on, you will see some additional settings appear. We will talk about site performance in greater detail later. You may leave it off for now.
- Cache Handler: File – this appears to be the only option. Joomla stores the cache in files on your server.
- Platform Specific Caching: Usually disabled. Enables a different cache for desktop/mobile if your site outputs different html to different devices.
- Cache Time: How long to store cache files at minimum before they are refreshed/updated. If your website changes a lot, you’ll want a shorter cache time.
- Path to Cache Folder: You may change the location Joomla stores the cache files. The default should be fine for most people (leave blank).
- System Cache: The cache allows the site to temporarily store data for easy access. This improves performance and makes your website faster. If you’re actively updating your website and making lots of changes, you’ll probably want to leave this on off. If you turn it on, you will see some additional settings appear. We will talk about site performance in greater detail later. You may leave it off for now.
- Session Settings: These settings deal with user sessions (tracking how users get logged into your site)
- Session Handler: How Joomla identifies a user. Leave on database.
- Session Lifetime: This is how long a user’s session lasts when they log in to your website. If they remain inactive for this amount of time, the session is over. It should be left relatively short for security reasons.
- Shared Sessions: Shares sessions between the site’s front end and back end. So if you login to the front part of the website, you’re also logged into the admin panel, or vice versa.
- Track Session Metadata: Logs details about user sessions to the database. It’s fine to leave on, but consider turning it off if your site has lots of active users, as all the logging activity could affect the database negatively.
The server tab contains settings related to the server. This could easily get confused with the system tab, as system and server seem quite similar. Remember, the system tab deals with the Joomla system itself, and the server tab deals with the actual server the system is running on.
- Path to Temp Folder: This is where Joomla stores the temporary files it needs to run. You’ll likely be fine leaving this alone.
- Gzip Page Compression: Compress the server output with a tool called Gzip. Enhances performance. We’ll discuss later.
- Error Reporting: The level of errors to report. For production sites, this should be none. If you’re a developer, you may need to change this to test things out.
- Force HTTPS: Makes sure your site’s only accessible from a secure connection. Leave this off for the test environment. On a live site with an SSL certificate setup, you would likely want this turned on.
- Location
- Website Time Zone: Whenever any time event gets logged, such as the time an article is published, a user logs in, etc. it is based on this time zone. You may want to set this to your local time zone.
- Web Services
- Enable CORS: This stands for Cross Origin Resource Sharing. This relates to security. Leave it off.
You don’t need to worry about the proxy settings. The database settings are the same settings we configured in the previous chapter. You should never need to change these unless your MySQL server moves or the database login information is changed.
Mail Settings: The mail settings determine where your site emails come from. This is used for things like sending user registration information, password resets, etc. Depending on how your server is configured, you may have to enter certain mail settings here for emails to work.
The logging tab allows us to change what gets logged and where. This is useful if you have errors you need to fix or consult a developer with.
- Path to log folder: Where the logs are stored. Default should be fine.
- Log Almost Everything: For developers only. You don’t want to log everything if it can be avoided, this will impact site performance and resources.
- Log Depreciated APIs: Another developer thing.
You may disregard custom logging.
The text filters tab allows us to control what types of html users in different groups have. For example, if your site supports comments, you might not want regular users to be able to post certain elements. This also prevents regular users from sharing malicious scripts that could harm other users.
You may have noticed a sidebar off to the left of the Global Configuration. This area links to component specific settings for various other parts of the website. We will discuss these settings in detail later.
Review all the items described in bold above. Give your site an appropriate Site Name if you haven’t already, add a good short Meta Description, decide if you want to enable Shared Sessions or not, and set your Website Time Zone. I recommend making a personal portfolio or blog for your first J4 website, but you may make it whatever you’d like. Be sure to click the Save button when you’re done.
Types of Joomla Extensions
Joomla websites consist of different pieces, known as extensions, all of which are customizable. Some of these were touched on in the first chapter. The four extension types are Components, Modules, Plugins, and Templates. They may be grouped together in packages.
The diagram below outlines the 4 types of extensions and what areas of the site they appear in:
Components
Components are usually complex pieces of software that add significant functionality to a website. Joomla comes bundled with several core components and there are countless other third-party components you can install. The Content component handles all the website’s articles, or content. The User’s component handles the sites users, permissions, and registration. The media component handles site media, like images. There are several other core components which will be discussed in more detail later.
Core components function a little differently than most other components, as they’re engrained into the very fabric of all things Joomla. They may be interconnected with other plugins and modules. They don’t stand alone, like many third party extensions might.
Examples of third-party components include extensions that add community forums, online stores, directories, advanced user profiles/social network features, and more. There are also utility components that add administrative functionality to the website, such as components to handle site backups and search engine optimization. Some of these integrate with pieces of the core components, and others operate largely on their own.
Modules
Modules are small tools or pieces of content displayed in particular areas of websites that add some functionality, but don’t usually take up a whole page like a component might. Examples of modules include the login form, menu display, and search box. There are several dozen modules built into Joomla. They usually help facilitate the tasks of larger components, like the search module, which takes the user to the full search component when a user types their query. They may be informational in nature, such as modules that display the most popular articles, or a banner advertisement.
They are laid out in different module positions. Different templates have different module positions available for you to use. For example, many templates have a sidebar position that allows you to place modules in a side bar (like the donate button on the right side of this website, or bottom of it if you’re viewing on mobile). Templates usually have positions dedicated to displaying menus, search boxes, and a footer section.
Modules can be set to be displayed on a single page, multiple pages, or across the entire website.
Templates
Templates are used to customize the style and colors on a website. Most commonly, a single template will be used across the entire website but you can select individual templates for different pages if you want to. There are dozens of free and hundreds of paid templates available for Joomla. Many templates offer additional configuration options which allow you to select different styles and colors. The style settings for each template usually include places to add custom logos, favicons, and site headers. The default Joomla front end template is called Cassiopeia, and the back end template is called Atum. There are not many third-party administrator templates available for Joomla 4/5 at the moment.
Plugins
Plugins work behind the scenes to add functionality and handle important system operations. There are many different types of plugins, which will be discussed later. Some examples include a search plugin, which indexes page content for search, or authentication plugins, which allow you to add additional authentication methods to a website. There are also many content plugins available, which can format the way certain aspects of your content look and behave.
Conclusion
This concludes the third chapter in KG’s Intro to Joomla series. In the next chapter, you will learn how to manage content with articles and categories.
Assignment
Instructions: Give your site a name in the Global Configuration and set any relevant fields discussed. Take some time to explore all the options in the Global Configuration and look through other areas of the administration panel. We’ll learn what every section does in the upcoming chapters.