Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Last revisionBoth sides next revision |
development:architecture:customizing_vufind [2020/03/04 13:43] – [Modules] demiankatz | development:architecture:customizing_vufind [2020/05/12 12:07] – [Modules] demiankatz |
---|
VuFind is built as a [[development:architecture:laminas|Laminas]] module. All of its routes and services are configured in /module/VuFind/config/module.config.php. | VuFind is built as a [[development:architecture:laminas|Laminas]] module. All of its routes and services are configured in /module/VuFind/config/module.config.php. |
| |
You can override these settings by building your own custom module. VuFind's install script provides the option of initializing a custom module. This establishes a directory and namespace where you can store your local configurations and code. It also sets up the VUFIND_LOCAL_MODULES environment variable that your Apache configuration uses to tell VuFind to load the custom code. | You can override these settings by building your own custom module. VuFind's install script (php $VUFIND_HOME/install.php) provides the option of initializing a custom module. This establishes a directory and namespace where you can store your local configurations and code. It also sets up the VUFIND_LOCAL_MODULES environment variable that your Apache configuration uses to tell VuFind to load the custom code. Even if you already have VuFind set up, you can run the install script a second time to make adjustments; just be aware that it will create a new Apache configuration in $VUFIND_LOCAL_DIR (while also making a backup of your existing configuration, in case you need to roll back). |
| |
Your configuration overrides belong in /module/[your module name]/config/module.config.php. Your custom code belongs in /module/[your module name]/src/[your module name], and it should live in a PHP namespace that corresponds with the module's name. | Your configuration overrides belong in /module/[your module name]/config/module.config.php. Your custom code belongs in /module/[your module name]/src/[your module name], and it should live in a PHP namespace that corresponds with the module's name. |