PART I: CREATING YOUR FIRST SITE WITH UMBRACO
CHAPTER 1: INSTALLING FOR THE FIRST TIME
Installing Umbraco using the Microsoft Web Platform Installer
Tips for Installing Umbraco in Special Environments
Debugging in a Development Environment
Security Settings in a Production Environment
Utilizing Umbraco Starter Kits
Applying and Manipulating Umbraco Skins
Modifying a Simple Umbraco Skin
Finding and Installing Umbraco Modules
CHAPTER 2: THE UMBRACO APPROACH
Separating Content and Structure
Understanding the Umbraco Backoffice Structure
Creating a User with Restricted Access
Setting Up a New Dictionary Label
Setting Up a User for Access to Multiple Start Nodes
Restricting the Type of Content
Working with Document Types Outside of Umbraco
Exporting Document Types as Plain Old CLR Objects
Using Document Type Properties
Properties with Special Meaning
CHAPTER 4: TEMPLATES, MARKUP, AND MASTER PAGES
Building Website Structure using Templates
How Templates Build Layout and Structure
Creating Templates With Umbraco
Creating Markup Using the Umbraco UI
Creating the Master Base Template
Creating the Textpage Template
Populating the Placeholder for the Textpage.Master File
Nesting and Inheritance with ASP.NET Master Pages
You Get What You Put In — A Good Thing
Changing the Document Type using AltTemplate
Styles and the Rich Text Editor
Introduction to Umbraco Macros
Using the Built-in XSLT Templates
Using XSLT Extensions to Make Macros Richer
Output an Image from the Media Library
Listing Pages from Current Page
Subpages from Changeable Source
User Generated Forms Using Umbraco Contour
CHAPTER 6: LANGUAGES AND DICTIONARIES
Adding and Updating Language Files
Changing the Backoffice UI Language
CHAPTER 7: MULTIPLE SITES, HOSTNAMES, AND LOCALIZATION
Content Management Best Practices
Organizing Templates for Reuse
Understanding the Rich Text Editor
CHAPTER 9: ADDING FUNCTIONALITY
Generating Website Navigation Menus
Providing the Latest News, Events, and Posts
Using Examine to Search Content
CHAPTER 10: PACKAGES—WHATEVER YOU CAN IMAGINE
Understanding the Package Repository
Using XSLT for Published Content
Counting, Looping, and Conditional Statements
CHAPTER 12: WORKING WITH .NET CONTROLS
List Subpages from Current Page
Rendering Nodes in a Grid Control
Creating a Page Programmatically
Sending Email with a Contact Form
Passing Data to .NET Through Macro Parameters
Using .NET from XSLT via XSLT Extensions
Getting Started with LINQ to Umbraco
PART III: DEPLOYING, TROUBLESHOOTING, AND SAMPLE APPLICATIONS
CHAPTER 13: DEPLOYING TO A PRODUCTION INSTALLATION
Are File Permissions Set Correctly?
Is Umbraco Configured in a Virtual Directory?
Does the IIS Application Pool .NET Runtime Version Match the Umbraco .NET Runtime Version?
Database-Related Installation Issues
Using umbracoInternalRedirectId
CHAPTER 15: SAMPLE APPLICATION: CLASSIFIED ADS
What to Configure for this Example
Assumptions to Make for this Example
The Umbraco Installation Components
APPENDIX A: UPGRADING AN EXISTING INSTALLATION
Backing Up Your Files and Database
Checking Package Compatibility
APPENDIX B: SETTING UP YOUR VISUAL STUDIO ENVIRONMENT
Setting Up the Umbraco Folder Structure
Referencing the Umbraco Libraries
APPENDIX D: DATA TYPE DEFINITIONS
Definition of Built-in Data Types