About Features Downloads Getting Started Documentation Events Support GitHub

Love VuFind®? Consider becoming a financial supporter. Your support helps build a better VuFind®!

Site Tools


Warning: This page has not been updated in over over a year and may be outdated or deprecated.
development:architecture:customizing_vufind

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
development:architecture:customizing_vufind [2015/12/11 18:53] – ↷ Page moved and renamed from vufind2:customizing_vufind_2.0 to development:architecture:customizing_vufind demiankatzdevelopment:architecture:customizing_vufind [2024/04/24 18:41] (current) – [Themes] emaijala
Line 7: Line 7:
 Much of VuFind's functionality can be controlled through simple .ini files.  These are designed to be human-readable and easily changed with little or no programming knowledge. Much of VuFind's functionality can be controlled through simple .ini files.  These are designed to be human-readable and easily changed with little or no programming knowledge.
  
-Default configurations can be found in the /config/vufind subdirectory of VuFind.  These can be overridden by copies in the /config/vufind subdirectory of your [[local settings directory]].+Default configurations can be found in the /config/vufind subdirectory of VuFind.  These can be overridden by copies in the /config/vufind subdirectory of your [[configuration:local_settings_directory|local settings directory]].
  
-Most settings are found in [[..:config.ini]], but additional files are provided for certain subsystems.+Most settings are found in [[configuration:files:config.ini]], but additional files are provided for certain subsystems.
  
 ===== Themes ===== ===== Themes =====
Line 17: Line 17:
 Existing themes are found in the /themes subdirectory of VuFind. Existing themes are found in the /themes subdirectory of VuFind.
  
-Details on creating a new theme can be found on the [[Customizing the User Interface]] page.+Details on creating a new theme can be found on the [[development:architecture:user_interface|Customizing the User Interface]] page.
  
-You can configure VuFind to use a custom theme through settings in [[..:config.ini]].+Details on the Bootstrap 5 based themes (starting with VuFind 10) can be found on the [[development:architecture:user_interface:bootstrap5|Themes Based on Bootstrap 5]] page. 
 + 
 +You can configure VuFind to use a custom theme through settings in [[configuration:files:config.ini]].
  
 ===== Modules ===== ===== Modules =====
  
-VuFind is built as a [[development:architecture:zend_framework|Zend Framework 2]] 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.
Line 31: Line 33:
 For information on some of the types of custom code you might wish to include in your module, see the [[development:plugins]] page. For information on some of the types of custom code you might wish to include in your module, see the [[development:plugins]] page.
  
-Starting with VuFind 2.4, some [[code generators]] are available to help save time when you build customizations in your local module.+Starting with VuFind 2.4, some [[development:code_generators|code generators]] are available to help save time when you build customizations in your local module.
 ===== Further Reading ===== ===== Further Reading =====
  
 See some useful applications of the VuFind customization on the [[installation:installing_multiple_instances|installing multiple instances]] page. See some useful applications of the VuFind customization on the [[installation:installing_multiple_instances|installing multiple instances]] page.
 +
 +===== Related Video =====
 +
 +See the [[videos:code_generators_1|Code Generators Part 1]] video for a hands-on example of setting up a local code module.
 ---- struct data ---- ---- struct data ----
 +properties.Page Owner : 
 ---- ----
  
development/architecture/customizing_vufind.1449859987.txt.gz · Last modified: 2015/12/11 18:53 by demiankatz