Browsing articles in "Web Development"

Joomla Folder Structure Explored

Dec 12, 2009   //   by admin   //   Web Development  //  No Comments

Joomla is one of the most widely used CMS today.Based on PHP/MySQL , it is easy to install,configure,use as well as extend.Due to the flexibility offered , it has attracted great attention towards itself.

The article tends to explore and thereby explain the significance of all the important files and folders that are automatically setup once joomla is installed.

Version referred : 1.5.9

If any change/addition is found by you, let us know so that we can add up the same .

If you unzip the Joomla package, you will see the following:

administrator

The administrator folder contains the following:

  • backups
  • cache
  • components
  • help
  • images
  • includes
  • language
  • modules
  • templates
  • index2.php
  • index3.php
  • index.php

components, modules, plugins, and templates

The components, modules, plugins, and templates have subfolders that contain all the code for all the installed extensions and templates.

Briefly, you would see following folders and files as mentioned below:

  • administrator – This folder contains all the files used for the administrator back-end and will be discussed more below.
  • cache – This folder is used by Joomla and some extensions to store cached files.
  • components – This folder contains all the installed components and will be discussed more below.
  • images – This folder is used by Joomla and some extensions to store image files.
  • includes – ?
  • installation – This folder is needed for the initial Joomla installation and must be removed once the installation is complete.
  • language – This folder is used by Joomla and some extensions to store language translation files. Each language has a folder in languages containing all the different language files installed with extensions and templates. The file name of the each translation file is similar to the extension or template to which it belongs. If you look at an individual language file, they are text files that contain a list of constants used in the extension or template and the value that should be shown to the user.
  • libraries – This folder contains the Joomla API code along with other packages.
  • logs – This folder is used by Joomla and extensions to store log files.
  • media – ?
  • modules – This folder contains all the installed modules and will be discussed more below.
  • plugins – This folder contains all the installed plugins and will be discussed more below.
  • templates – This folder contains all the installed templates and will be discussed more below.
  • tmp – This folder is used by Joomla and extensions to store temporary files.
  • xmlrpc – This folder contains files that are used when making xmlrpc calls to Joomla. These calls are only allowed if Enable Web Services is set to Yes in the Globals -> System configuration (It is No by default).
  • CHANGELOG.php
  • configuration.php-dist – This is an example configuration.php file. This file will be created for you during the installation process, but this is good to keep around for reference.
  • COPYRIGHT.php
  • CREDITS.php
  • htaccess.txt – This is an example htaccess file. Apache will not use this file until it is renamed to “.htaccess”.
  • index2.php – This is a secondary entry point for all Joomla requests. If you replace index.php with index2.php in a request to a Joomla server, only the response from the requested component will be visible.
  • index.php – This is the main entry point for all Joomla requests.
  • INSTALL.php
  • LICENSE.php
  • LICENSES.php
  • robots.txt – This file is used by search engines. It tells search engines which folders not to index. In Joomla’s case, search engines should not index any folders.