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
Last revisionBoth sides next 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:17] – [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|Bootstrap 5 Based Themes]] 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.txt · Last modified: 2024/04/24 18:41 by emaijala