Joomla Extension Manager — Installing, Updating and Managing Extensions
In this tutorial, you'll learn how to use the Joomla Extension Manager — installing extensions via upload, directory, URL, and the Joomla Extensions Directory; updating extensions; and uninstalling them cleanly when no longer needed.
What You'll Learn
- The types of extensions in Joomla: Components, Modules, Plugins, Templates, Languages, Packages, Files, Libraries
- How to access the Extension Manager (Extensions > Manage > Install)
- The four installation methods: Upload Package File, Install from Directory, Install from URL, Install from Web
- How to install extensions from the Joomla Extensions Directory (JED)
- How to update extensions (Extensions > Manage > Update)
- How extension update sites work
- How to uninstall extensions safely
- The Discover Install feature
- The Database fix tool
- Understanding extension warnings and dependencies
Why It Matters
Installing extensions is how you add functionality to Joomla — e-commerce, forms, SEO tools, security, and more. But installing the wrong way or installing incompatible extensions can break your site. Understanding the Extension Manager ensures you install only what you need, keep everything updated, and cleanly remove extensions that are no longer useful.
Real-World Use
A Joomla site owner needs to add a contact form, a backup solution, and a security scanner. They go to the Joomla Extensions Directory, find RSForm Pro, Akeeba Backup, and Admin Tools. They download each package, install them via the Extension Manager, configure each one, and their site now has forms, backups, and security — all from trusted extensions installed correctly.
Learning Path
flowchart LR A["CSS & User.css"] --> B["Extension Manager
You are here"]:::current B --> C["Components"] C --> D["Plugins"] D --> E["Languages"] classDef current fill:#38bdf8,color:#0f172a,stroke-width:2px
Extension Types
Joomla classifies extensions into types. Each type serves a different purpose.
| Type | Description | Examples |
|---|---|---|
| Component | Major functionality, occupies the main content area | com_content (articles), com_contact, com_banners |
| Module | Small blocks of content in module positions | mod_menu, mod_login, mod_articles_latest |
| Plugin | Event handlers that run when specific events occur | Authentication, content, system, editors |
| Template | Controls site appearance | Cassiopeia, Atum |
| Language | Translations of the interface | English, French, German, Spanish |
| Package | A collection of extensions that install together | Akeeba Backup (component + plugins + modules) |
| Files | Additional files for use by other extensions | Library files, framework files |
| Library | Shared code used by multiple extensions | FOF (Framework on Framework), Joomla APIs |
Accessing the Extension Manager
The Extension Manager has several views, all accessible from Extensions > Manage:
| Menu Item | Purpose |
|---|---|
| Install | Install new extensions |
| Update | Update installed extensions |
| Manage | View, enable, disable, uninstall extensions |
| Discover | Find and install manually extracted extensions |
| Database | Fix database schema issues |
| Warnings | View extension warnings and conflicts |
Installing Extensions
Method 1: Upload Package File
This is the most common method. You download an extension as a .zip file and upload it through Joomla.
# Steps for Upload Package File
# 1. Download the extension .zip from the developer's site
# 2. Go to Extensions > Manage > Install
# 3. Click "Upload Package File" tab if not already selected
# 4. Click "Choose File" and select the .zip
# 5. Click "Upload & Install"
# 6. Wait for the success message
Joomla extracts the zip file, copies the files to the correct locations, runs any installation scripts, and creates the necessary database records.
Method 2: Install from Directory
Use this when you have already extracted the extension files on your server. This is useful for large extensions that exceed PHP's upload file size limit.
# Steps for Install from Directory
# 1. Extract the extension zip file on your server
# unzip akeeba-backup.zip -d /var/www/html/tmp/akeeba/
# 2. Go to Extensions > Manage > Install
# 3. Click "Install from Directory" tab
# 4. Enter the full path to the extracted folder
# /var/www/html/tmp/akeeba/
# 5. Click "Install"
Method 3: Install from URL
Use this when the extension is hosted on a remote server. Joomla downloads the zip file and installs it.
# Steps for Install from URL
# 1. Get the direct download URL of the extension zip
# 2. Go to Extensions > Manage > Install
# 3. Click "Install from URL" tab
# 4. Enter the full URL
# https://example.com/extensions/myextension.zip
# 5. Click "Install"
Method 4: Install from Web (Joomla Extensions Directory)
This method lets you browse and install extensions directly from the Joomla Extensions Directory without leaving your admin panel.
# Steps for Install from Web
# 1. Go to Extensions > Manage > Install
# 2. Click "Install from Web" tab
# 3. Browse or search for extensions
# 4. Click an extension to see details
# 5. Click "Install Now"
# 6. Confirm the installation
The Install from Web tab connects to the JED API and displays extensions with ratings, descriptions, and compatibility information.
Installing from JED Manually
If the Install from Web method is not available (due to server restrictions), you can install from JED manually:
- Go to extensions.joomla.org
- Search for the extension you need
- Click the extension name to view details
- Click the Download link (often goes to the developer's site)
- Download the .zip file
- Go to Extensions > Manage > Install in your Joomla admin
- Use the Upload Package File method
Updating Extensions
The Update view (Extensions > Manage > Update) shows all extensions with available updates.
# Steps to update extensions
# 1. Go to Extensions > Manage > Update
# 2. Click "Find Updates" button to refresh the update cache
# 3. Select the extensions you want to update (check boxes)
# 4. Click "Update Now" button
# 5. Wait for each update to complete
# 6. Verify the site still works correctly
Update Sources
Joomla checks for updates through update sources stored in the database. Each extension registers an update server URL during installation.
# Update sources are stored in the #__update_sites table
# You can view them via Extensions > Manage > Update Sites
# Or query directly:
# SELECT * FROM #__update_sites WHERE name LIKE '%akeeba%';
Update sources can be:
- XML files hosted on the developer's server
- The Joomla Extensions Directory update system
- Custom update servers
One-Click Updates
Some extensions support one-click updates. When the update system finds a newer version, you see it in the Update view. Click "Update Now" and Joomla downloads, extracts, and installs the update automatically.
Uninstalling Extensions
To remove an extension:
- Go to Extensions > Manage > Manage
- Filter by type if needed (Components, Modules, Plugins, etc.)
- Check the box next to the extension
- Click "Uninstall" in the toolbar
- Confirm the uninstallation
# Steps to uninstall
# Extensions > Manage > Manage
# Select extension checkbox(es)
# Click "Uninstall" in toolbar
# Review warnings about dependencies
# Confirm uninstallation
Uninstall Warnings
When uninstalling, Joomla shows warnings if:
- The extension has dependencies (other extensions that require it)
- The extension is protected (core extensions cannot be uninstalled)
- Database cleanup is incomplete
Always read the warnings before confirming. Uninstalling a component that other modules depend on can break those modules.
Discover Install
Use the Discover feature when you have manually extracted extension files to the correct folders but Joomla has not registered them yet.
# When to use Discover Install
# 1. You uploaded extension files via FTP
# 2. You moved files from one server to another
# 3. A manual extraction was needed
# Steps
# 1. Go to Extensions > Manage > Discover
# 2. Click "Discover" button to scan for unregistered extensions
# 3. Check the discovered extension(s)
# 4. Click "Install" to register them
Database Fix
Extensions that modify the database may leave it in an inconsistent state after updates. The Database view shows schema mismatches.
# Steps to fix database
# 1. Go to Extensions > Manage > Database
# 2. Review the list of extensions with database issues
# 3. Click "Fix" to update the database schema
Run this tool after every extension update to ensure the database is in sync.
Warnings Tab
The Warnings tab (Extensions > Manage > Warnings) shows potential issues:
- Extensions that are not compatible with your Joomla version
- Missing dependencies
- Conflicts between extensions
- Deprecated extension features
Check this tab after installing any new extension.
Extension Dependencies
Some extensions depend on other extensions. For example:
- A package extension like Akeeba Backup includes a component, plugins, and modules
- A library extension like FOF is required by many other extensions
- A plugin may require a specific component to be installed
When you uninstall an extension with dependencies, Joomla warns you. If you uninstall a library that other extensions need, those extensions stop working.
# View extension dependencies
# Extensions > Manage > Manage
# Click on an extension name to see details
# The "Dependencies" tab shows what depends on this extension
Best Practices for Extensions
- Install only what you need. Every extension adds code that runs on every page.
- Keep extensions updated. Outdated extensions are the most common security vulnerability.
- Test extensions on a staging site first, especially for major functionality.
- Read reviews and check compatibility before installing from JED.
- Remove unused extensions. They slow down the admin interface and may contain security issues.
- Backup before installing or updating major extensions.
Common Mistakes
Installing incompatible extensions: You install an extension built for Joomla 3 on a Joomla 5 site. It breaks the page or causes errors. Always check compatibility before installing.
Not checking extension dependencies before uninstalling: You uninstall a library that three other extensions need. All three break. Check the dependencies tab first.
Skipping the Database Fix after updates: An update runs database changes but leaves the schema table out of sync. Future updates fail. Always run the Database fix after updating.
Installing too many extensions: You install 50 extensions because they all seem useful. The admin interface becomes slow, pages take longer to load, and conflicts arise. Be selective.
Ignoring update notifications: You see update notifications but ignore them. Months later, a security vulnerability in an old extension is exploited. Keep everything updated.
Practice Questions
What are the four installation methods available in the Extension Manager? Answer: Upload Package File (upload a .zip), Install from Directory (path to extracted folder), Install from URL (remote download link), and Install from Web (browse JED from within Joomla).
What should you check before uninstalling an extension? Answer: Check the Dependencies tab to see if other extensions depend on this one. Also check if the extension is a core component that cannot be uninstalled. Read the warnings that Joomla shows before confirming.
How does Joomla know when an extension has an update available? Answer: Each extension registers an update server URL in the #__update_sites table during installation. Joomla periodically checks these URLs for newer versions and displays available updates in Extensions > Manage > Update.
Challenge: Set up a complete extension management workflow. Install Akeeba Backup (a package extension) via Upload Package File. Verify it appears in Extensions > Manage > Manage. Check its update source in Extensions > Manage > Update Sites. Create a backup of your site (using the newly installed extension). Then uninstall Akeeba Backup, noting the warnings about dependencies. Finally, run the Database Fix tool to ensure the database is clean.
FAQ
Mini Project
Your task: Practice installing, managing, and removing extensions.
- Find a free extension on the Joomla Extensions Directory (such as OSMap for sitemaps).
- Download the extension package (.zip) to your computer.
- Install it using the Upload Package File method.
- Verify the extension appears in Extensions > Manage > Manage.
- Check the extension's update source.
- Configure the extension (create a sitemap, enable the module, etc.).
- Check the Database Fix tool to ensure the schema is clean.
- Uninstall the extension.
- Verify it is completely removed from Extensions > Manage > Manage.
- Run the Database Fix tool again.
This exercise teaches you the full lifecycle of an extension — from installation through configuration to clean removal.
What's Next
Now that you can manage extensions, you are ready to explore Joomla's core components:
Continue to Lesson 21: Core Components — Learn about Contacts, Banners, News Feeds, Search, and Smart Search components.
Related lessons:
- Joomla Modules and Positions — Learn how modules display extension output
- Joomla Plugins — Learn about system, content, and authentication plugins
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro