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.
legacy:vufind_1.x_developer_manual:user_interface_customization

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
customization [2011/06/28 15:45] – old revision restored demiankatzlegacy:vufind_1.x_developer_manual:user_interface_customization [2015/12/11 20:28] – ↷ Page moved and renamed from customization to legacy:vufind_1.x_developer_manual:user_interface_customization demiankatz
Line 1: Line 1:
-====== User Interface Customization ======+====== User Interface Customization (VuFind 1.x) ======
  
-VuFind is developed using [[http://www.smarty.net/|Smarty]] templates for HTML and CSS for design Templates and CSS are bundled into themeswhich are found in the web/interface/themes folder You can use one of VuFind's built-in themes (classic or default), or you can build your own.  The theme used by VuFind is determined by the theme setting in the [Sitesection of web/conf/config.ini.+// This page refers to VuFind 1.x; for documentation on version 2.xsee [[development:architecture:user_interface|User Interface Customization (VuFind 2.x)]//.
  
-The layout is controlled by the Yahoo UI CSS, which means that by modifying the class declarations within the HTML, you can modify the layout. For more information on how to use the Yahoo UI CSS, please see the [[http://developer.yahoo.com/yui/grids/|Yahoo UI web site]]. To modify the colors and design elements, you can edit the styles.css file located in the css directory of your chosen theme.+VuFind is developed using [[http://www.smarty.net/|Smarty]] templates for HTML and CSS for design.  Templates and CSS are bundled into themes, which are found in the web/interface/themes folder.  You can use one of VuFind's built-in themes (blueprint, classic or default), or you can build your own.  The theme used by VuFind is determined by the theme setting in the [Site] section of web/conf/config.ini. 
 + 
 +The layout in the classic/default themes is controlled by the Yahoo UI CSS, which means that by modifying the class declarations within the HTML, you can modify the layout. For more information on how to use the Yahoo UI CSS, please see the [[http://developer.yahoo.com/yui/grids/|Yahoo UI web site]]. The blueprint theme uses [[http://www.blueprintcss.org/|Blueprint CSS]] instead of YUI.  Regardless of layout, to modify the colors and design elements, you can edit the styles.css file located in the css directory of your chosen theme.
  
 All of the HTML is stored in Templates. There is one main template that controls the overall web site - the layout.tpl file stored in the root of your chosen theme's directory. Each module also has its own subdirectory in the theme where the individual templates for each web page are stored. They can be modified as needed. All of the HTML is stored in Templates. There is one main template that controls the overall web site - the layout.tpl file stored in the root of your chosen theme's directory. Each module also has its own subdirectory in the theme where the individual templates for each web page are stored. They can be modified as needed.
Line 16: Line 18:
 The main benefit of theme inheritance is that it can make it easier for you to manage your local customizations.  If you only need to change a few files, creating a separate theme for your custom versions makes it easier to remember exactly what you have changed.  As the VuFind code evolves, you won't have to worry about copying templates for new features into your custom theme -- inheritance will simply take care of them.  The only time you need to worry about reconciling changes is when a template you have customized changes in the trunk, which should be a fairly infrequent event if your theme is simple enough.  //In the example above, suppose you just want to change headers and footers -- you could put a new layout.tpl in your MyUniversity theme but leave everything else in default.// The main benefit of theme inheritance is that it can make it easier for you to manage your local customizations.  If you only need to change a few files, creating a separate theme for your custom versions makes it easier to remember exactly what you have changed.  As the VuFind code evolves, you won't have to worry about copying templates for new features into your custom theme -- inheritance will simply take care of them.  The only time you need to worry about reconciling changes is when a template you have customized changes in the trunk, which should be a fairly infrequent event if your theme is simple enough.  //In the example above, suppose you just want to change headers and footers -- you could put a new layout.tpl in your MyUniversity theme but leave everything else in default.//
  
-Note that theme inheritance is only one possible strategy for managing your themes.  If you are planning something more complicated than the customization of a few files, you might find it helpful to read up on using [[subversion#vendor_branching|vendor branches]] in [[subversion|Subversion]] as another possible approach to the problem.+Note that theme inheritance is only one possible strategy for managing your themes.  If you are planning something more complicated than the customization of a few files, you might find it helpful to read up on using [[legacy:vufind_1.x_developer_manual:subversion#vendor_branching|vendor branches]] in [[legacy:vufind_1.x_developer_manual:subversion|Subversion]] as another possible approach to the problem.
  
 ==== CSS Inheritance ==== ==== CSS Inheritance ====
legacy/vufind_1.x_developer_manual/user_interface_customization.txt · Last modified: 2018/12/19 14:00 by demiankatz