Custom template creation

Design templates in the new Dolphin 7 are a little bit different from Dolphin 6. Now almost all content representation can be controlled by system templates and modules templates. See the description of the /inc/classes/BxDolTemplate.php file for the complete list.

To start new templates, it is best to make it a copy of the UNI template, then edit scripts/BxTemplName.php in your template folde. UNI is an empty template which inherits the base template only. The base template is never used directly, but all other templates must inherit it, and override only the necessary features. After you make a copy of the UNI template, you can start to override its styles.

For example, you need to override body color in the common.css file, then you need to add style for body color in your common.css file, which has only one line by default - inclusion of the common.css file from the base. It is strongly prohibited to copy the CSS files from the base, because it will make future version upgrades more difficult.

To override some html template just copy it from the base, and make the necessary changes. It is bad practice to copy all html templates from the base directory without modifying them. To override an image, place it on your template with the same name, and your image will be used instead of the default. To leave the default image - do not copy it from the base - it is already used from the base if not found in your template.

To override some PHP class (as a very basic example) you need to copy the function from the base class and place to yours to start making modifications in it. It is strongly prohibited to copy the whole PHP class, or all functions from the base class. Such modifications make you more flexible in designing new templates, but it requires some basic knowledge of PHP.

In most cases, all you need is to override some CSS, html and PHP files, but in some rare cases you need to modify modules design too. In this case you need to follow the same rules but regarding the module templates directory, it also has css, script directories like main site templates, and also all modules come with the base template.

For more information about templates see the /inc/classes/BxDolTemplate.php file.

Last modified 5 weeks ago Last modified on Nov 6, 2017, 1:06:29 PM
 
Fork me on GitHub