Skip to content

Locked extensions

Nicholas K. Dionysopoulos edited this page Oct 15, 2024 · 1 revision

Locked extensions

All extensions in Joomla! have a record in #__extensions.

One of the man fields on that table is locked.

When locked = 0 (the default) the extension is Unlocked, and you are allowed to enable and disable the extension as you see fit. A disabled extension will not execute and will not appear in Joomla in places other than the extensions manager.

When locked = 1 the extension is Locked, and you are NOT allowed to enable or disable the extension. If it's enabled, it stays enabled. If it's disabled, it stays disabled.

Why does it exist?

There are some core Joomla! extensions which must never be disabled, such as Users, or Categories. If you were able to disable these extensions you might break your site. If you disabled the Installer extension (extensions manager) you would not be able to re-enable it again! This is why locked exists; to prevent you from disabling extensions in a way that would brick your site.

For this reason, only some core Joomla! extensions should be Locked. Third party extensions should never be Locked.

Fun with Locked extensions

It is possible that someone messes up –due to a very unfortunate upgrade path, using third party extensions, or editing the database directly– and ends up in a situation with a disabled and Locked extension. Therefore, they can never re-enable that extension.

If it's a third party extension you'd have to uninstall and reinstall it. If it's a core extension you'd be stuck forever.

Unless you use Onthos, of course! Onthos will allow you to enable and disable extensions regardless of whether they are Locked or Unlocked.

But be careful! You can disable and lock any extension, including Onthos itself, putting you into an impossible position.