In this chapter, we examined what a template is within the context of CMS. A template, in essence, is a framework upon which all pages within a CMS site are built. It contains all the visual and functional elements of a page within the site, without any content. Content contributors can then choose to use a specific template to create a page within the site.
Next, we looked at the various logical template types. Each logical template type is really just a way of looking at your site; it provides a framework for analysis. This framework can be very useful for both new and existing sites. We discussed detail, summary, format, and composite template types as a way of categorizing the types of templates that you might build in your own Web projects. Each logical type has certain unique characteristics that should make their identification easy when you are analyzing your existing site or a site you're in the process of creating.
Once we finished discussing the various logical template types, we examined the high-level process of assembling a simple template. We talked about creating a generic template, which could represent some number of pages within your site. With this generic template, we could begin to identify the various subelements, which in the BOTS site were turned into user controls.
After we developed our generic template in HTML and identified the basic components, we created our first ASPX page. The ASPX page is the second part of the two elements that make up a CMS template; the other is the TGI. We then modified the TGI to point to this new ASPX page, we added our components, and we tied the placeholders to the corresponding placeholder definitions in our TGI.
Finally, we learned how to debug templates with VS.NET. Because templates are run directly as ASPX pages, you have to use one of two techniques: attaching directly to the ASPX process or using a redirect page. Essentially, both techniques work equally well the one that you use is a personal choice.