Documentation Center

Modular Templating Framework

SDL Tridion 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:
Page Templates
Templates that turn an SDL Tridion Page into a publishable Web page
Component Templates
Templates that turn a Component into a Component Presentation, which can be included on a publishable Web page
Compound Template Building Blocks
Sequences of Template Building Blocks, to be added to a Page Template or Component Template as a single unit.

SDL Tridion 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.