Setting the File Directory Path

Overview

You can now define multiple File Directory Paths, each with an optional label. In practice, this lets you map several folders as root locations (each optionally labelled), shown as a labelled root list in the browser. Path variables remain supported for dynamic values.

  • Default: If you’ve never changed it, the first path defaults to Joomla’s images folder.
  • Labels: If no label is set, the final segment of the path is used (e.g. images/filesFiles).

Upgrade note: Existing single-path setups are migrated into the first item automatically.

Where to set paths

For all applicable plugins (global):

Editor Profiles → Editor Parameters → Filesystem → File Directory Paths

Per plugin (e.g. Image Manager Extended, File Manager, Media Manager):

Editor Profiles → Plugin Parameters → [Plugin name] → File Directory Paths

You can add multiple entries, assign labels, and reorder by drag & drop.

How it appears in dialogs

In the Image Manager, File Browser, and related dialogs, configured paths appear as a labelled root list.

  • In the root view, selection, folder creation, and uploads are disabled.
  • Click a labelled path to enter that folder and enable normal actions.

The root list display when using multiple folders

Single-path contexts

Where only a single path is supported (e.g. Direct Upload in Media Fields and some Template Manager features), the first path in the list is used.

Path rules

When setting paths, please note:

  • Paths are relative to the Joomla site root; you cannot target folders outside the site root.
  • Paths must not start with . or .. (e.g. ../images is invalid).
  • Paths must not start with Joomla system folders (e.g. administrator, cache, components, language, libraries, logs, media, modules, plugins, templates, xmlrpc) unless you have removed that folder from the Restricted Directories list.
  • If Allow Root Access is set to Yes and no paths are configured, the browser may list the Joomla root. This is not recommended except for advanced use cases.
  • The folder will be created automatically if it does not exist.
  • Start with a static base: variables may be used after an existing path segment (e.g. images/$usergroup is valid; $usergroup/$username is not).

Path variables

You can include these variables within a path (they’re replaced at runtime):

  • $id – current user ID
  • $username – current username
  • $usertype or $usergroup – user group name (e.g. Author)
  • $profile or $group – editor profile name
  • $year – current year (e.g. 2025)
  • $month – current month number (e.g. 09)
  • $day – current day number (e.g. 04)
  • $hour – current hour (24-hour, e.g. 23)

Example:images/$usergroup/$username/$year/$month

Remember: the path must begin with an existing static segment, such as images/….

Restricting users to their own folder

To confine users to a specific area, include variables like $username and/or $usergroup in the path:

  • images/$username → a user with username joeblogs is restricted to images/joeblogs
  • images/$usergroup/$usernameimages/Author/joeblogs

Users will be able to access, upload, and manage files only within their resolved path and its subfolders.