Documentation Center

Modular Templating Framework

SDL Web lets you create Template Building Blocks. A Template Building Block can contain an Adobe Dreamweaver Template (.dwt file), a C# fragment, a .NET assembly, or an XSLT stylesheet.

You implement and assemble functionality using the Modular Templating Framework as follows:

Implementing functionality
You implement functionality for Templates by creating Template Building Blocks which form the component parts of a Page Template or Component Template:
  • In Adobe Dreamweaver, you create an Adobe Dreamweaver Template (.dwt file), containing your page layout and design. You then upload this file into a Template Building Block in Content Manager Explorer.

  • In Visual Studio, you create a fragment of C# code or a .NET assembly (DLL file). Both can communicate with Content Manager through the TOM.NET (.NET Tridion Object Model) API.

    If you create a C# fragment, you directly copy-paste your fragment into the Source tab of a Template Building Block in Content Manager Explorer.

    If you create a .NET assembly, you upload the DLL file into a Template Building Block in Content Manager Explorer.

  • In a plain-text editor or XML editor, you create an XSLT stylesheet. Your stylesheet can communicate with Content Manager using parameters passed to it. You directly copy-paste your stylesheet into the Source tab of a Template Building Block in Content Manager Explorer.
Assembling functionality
You use Template Builder to assemble Template Building Blocks together into a Template. You can create the following types of Templates:
Type of TemplateDescription
Page TemplateTurns a Page (an object in Content Manager) into a publishable Web page
Component TemplateTurns a Component into a Component Presentation, which can be included on a publishable Web page
Compound Template Building BlockSequence of Template Building Blocks, to be added to a Page Template or Component Template as a single unit

SDL Web ships with a number of predefined default Template Building Blocks, which have been designed to perform basic templating tasks, such as selecting Components, resizing screenshots, publishing the binaries in a package, and so on.