The file structure of Projectfork is very different compared to a "normal" Joomla component. All important files are located in the Joomla administrator folder:
"<joomla root>/administrator/components/com_projectfork"
From here, we have several folders for the different extensions and core files of Projectfork:
- /_core - Contains the core files
- /_install - Contains the files used for the installation and upgrading of Projectfork
- /languages - Contains all installed language packages
- /mods - Contains all installed mods
- /panels - Contains all installed panels
- /sections - Contains all installed sections
- /themes - Contains all installed themes
Note that all extensions need to be registered in the database. Otherwise their presence will not be noticed within the system. For database table reference, read the database structure reference document.
Language structure
All installed language package files are located in: "<joomla root>/administrator/components/com_projectfork/languages". Each installed language comes with at least 2 files: The PHP file containing the translation strings and an XML file containing all information about the package and the author.
Panel structure
Panels have the same structure as languages and are located in: "<joomla root>/administrator/components/com_projectfork/panels". There are usually 2 files per panel: The PHP file containing the panel code and the XML file with the installation and author information.
Section structure
Section files reside inside a dedicated folder in: "<joomla root>/administrator/components/com_projectfork/sections/<section_name>". At the very least, a section comes with 2 files: the *.init.php file which serves as entry point for the section code and an XML file containing the installation and author information.
Usually there are 4 main files and additional output files in a dedicated output folder. The 4 main files are:
- *.init.php - This is the entry point for the section and is required!
- *.controller.php - This file processes a user request
- *.class.php - This file is usually responsible for processing data such saving/loading and is invoked by the controller.
- *.xml - Needed for install/uninstall. It also contains the configuration options.
The files located in the "output" folder contain html code and are used to display forms, lists etc. However, in most cases, the navigation elements are not part of the output files and are rendered inside a panel instead. It may also happen that the entire actual ouput is rendered through panels and that the output file merely creates the interface. This is mostly the case for any "details" output files.
Theme structure
Theme files reside in their dedicated sub-folder just like sections: "<joomla root>/administrator/components/com_projectfork/themes/<theme_name>". A theme usually consists of 2 main files, a "css" folder containing the stylesheets and an "images" folder containing images and icons. The 2 main files are:
- index.php - Contains the html and php code
- *.xml - Needed for install/uninstall
Related items
- Database structure