How RelationalExtend works - RelationalExtend/RelationalExtend GitHub Wiki
- Extensions are stored in the fuel/extensions folder.
- Each extension has 6 major components: Extension core (executes before a theme is rendered), Plugins core (Works with the Lex Parser GitHub page plugins system), Setup core (Facilitates the setup of the extension), and Info core (Provides plugin info). It then also has an Admin Controller, as well as a Public Controller. The Admin Controller works to render the components of the plugin on the admin control panel. The public controller works in conjunction with the Lex Parser to render a public theme.
- We also have a themeing system. Themes are treated like extensions, but are installed, activated and uninstalled within the database. Themes have an Info Module, and layout segments, partial segments, javascript segments, stylesheet segments and image segments. Themes are stored in the fuel/themes folder.
- The admin controller is developed to handle heavy lifting on the core components and allow you to focus on doing extensions that work. Public controllers help render the themes and work with extensions.
Before we dig into the extensions and themes system please make sure you also refer to Fuel PHP documentation as well as the Lex Parser documentation above and understand how to work with the FuelPHP MVC framework as well as the Lex Parser.