Added the possibility for themes to override core module functions
This commit is contained in:
parent
acefb84681
commit
48e6ff21aa
2 changed files with 24 additions and 3 deletions
|
@ -59,7 +59,19 @@ The same rule applies to the JavaScript files found in
|
|||
|
||||
they will be overwritten by files in
|
||||
|
||||
/view/theme/**your-theme-name**/js.
|
||||
/view/theme/**your-theme-name**/js
|
||||
|
||||
### Modules
|
||||
|
||||
You have the freedom to override core modules found in
|
||||
|
||||
/mod
|
||||
|
||||
They will be overwritten by files in
|
||||
|
||||
/view/theme/**your-theme-name**/mod
|
||||
|
||||
Be aware that you can break things easily here if you don't know what you do. Also notice that you can override parts of the module – functions not defined in your theme module will be loaded from the core module.
|
||||
|
||||
## Expand an existing Theme
|
||||
|
||||
|
|
11
index.php
11
index.php
|
@ -233,7 +233,16 @@ if(strlen($a->module)) {
|
|||
}
|
||||
|
||||
/**
|
||||
* If not, next look for a 'standard' program module in the 'mod' directory
|
||||
* If not, next look for module overrides by the theme
|
||||
*/
|
||||
|
||||
if((! $a->module_loaded) && (file_exists("view/theme/" . current_theme() . "/mod/{$a->module}.php"))) {
|
||||
include_once("view/theme/" . current_theme() . "/mod/{$a->module}.php");
|
||||
// We will not set module_loaded to true to allow for partial overrides.
|
||||
}
|
||||
|
||||
/**
|
||||
* Finally, look for a 'standard' program module in the 'mod' directory
|
||||
*/
|
||||
|
||||
if((! $a->module_loaded) && (file_exists("mod/{$a->module}.php"))) {
|
||||
|
|
Loading…
Reference in a new issue