Render templates is a Dam For Sitecore term. It is used as templates for what HTML should be rendered for different asset types. The reason for this, is that the HTML rendered differs a lot from asset type to asset type - for instance video is very different from image.
The HTML templates are available on the following Sitecore path
/sitecore/system/Modules/Digizuite/Render Templates
and there is a template available for each asset type. An Render templates has a HTML section that contains six different fields:
- Rich text Editor Media
- Rich Text Editor Link
- Asset Field Type
- Asset Link Type
- Content Editor Asset
- URL
- DownloadUrl
Each template is used in different scenarios. It should be very apparent which ones for most of them (e.g. Rich Text Editor Media is of course used when inserting media in the Rich Text Editor). The only one that requires a little explaining is the URL and DownloadUrl . These are used when getting the URL/Doenload Url of assets using the API by the methods on the AssetMetadata object.
Understanding the templates
The templates uses the concept of Stampvalues. These are placeholders that are replaced on runtime with the corresponding values.
Info
Rich text editor inserts are resolved at the point in time the asset is inserted in the context language of the insert user.
an example of these templates for the asset type Image looks like this:
<img src="{stampvalue-config:cdn}/{stampvalue-config:mediapipeline}/{stampvalue-asset:assetsiloid}/{stampvalue-asset:assetid}-{stampvalue-selected:quality}" alt="{stampvalue-asset:description}" />
The idea is pretty simple. Each Stampvalue is replaced with corresponding values by a pipeline called GetAssetFieldValue which is defined in the DFS.Pipelines.config file. It is spawned based on the three custom field types that comes with the DAM For Sitecore module:
- Asset
- AssetList
- AssetLink
Custom HTML Templates
The HTML templates are fully customizeable and may be changed according to client needs. A simple example could be changing the alt text to a different metafield. Furthermore, should there be a need for a more advanced use case, which is not covered by the standard Stampvalues, then the pipeline GetAssetFieldValue can be extended to understand custom Stampvalues.