Creating Content Templates
Content templates are not really much different to content pages in a normal Speck application, apart from the fact that you have the request.speck.page structure to play with.
The current keyword is available as request.speck.page.keyword. This can be used when retrieving content for the current location only, allowing the same template to be used in multiple locations to generate different content. You should use the keywords attribute of cf_spContent when retrieving content that is location specific. If you have multiple cf_spContent calls for a particular content type within a template, you may also need to use the label attribute to separate each one. For example you might want text in two columns, so you could set the keywords attribute to "#request.speck.page.keyword#" for both cf_spContent calls, but use separate labels, e.g. "column1" and "column2".
Templates can also change keys in the request.speck.page structure, before they get used within cf_spPage. For example, the articles template provided with the demo application changes the title and description keys when viewing a full article so that the page title and meta description generated by cf_spPage will match the article. The best way to get acquainted with how templates are created is to look at some of the simpler ones provided with the demo (some of them only have a few lines of code).