USING XSLT FOR PUBLISHED CONTENT

You must keep one important thing in mind when you are deciding whether to use .NET or XSLT to render your macros. Although .NET provides you with access to both published and unpublished content, XSLT-powered macros can only access published content that resides in the cache. This offers a couple of benefits:

  • When requesting content, you can be sure that unpublished content will never be displayed.
  • You'll have no roundtrips to the database to retrieve content. So, any operations on the content tree are very fast.

image When accessing content in .NET you can use the Document API to access all content. This makes requests to the database, so be sparse with your usage of the Document API in large installations. Umbraco also exposes the functionality of using the NodeFactory, discussed in Chapter 12. This factory allows you to run XSLT and XPath statements on published content from your .NET user controls.

For more information, see Chapter 12.

To get a clear picture of what the XML cache looks like, you can open up the cache file. In Umbraco 4.5.x and later, you can find this file in <install root>/App_Data/umbraco.config. In earlier versions, you can find the file by going to <install root>/data/umbraco.config.

As with earlier demonstrations in this book, you will get output that differs from the examples for both Umbraco versions 4.5.x and 4.x. The most obvious difference that you'll see is that the old version of the schema used the same tag name for all nodes in the XML cache, namely <node …/>. In the new version, this is no longer the case and nodes are named after their respective document type alias, such as <TextPage …/>. What you'll also see in the examples in this chapter is that the new schema makes for less verbose XPath statements and an easier-to-read XML structure.

image To set a newer version of Umbraco to use the old XML schema, simply change the <UseLegacyXmlSchema /> tag in <install root>/config/umbracoSettings.config to true.

To exclude a node from the published XML cache, simply navigate to the Properties tab of the node in the content tree (located in the Content section), and click the Unpublish button, as shown in Figure 11-2.

FIGURE 11-2

image

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset