CRUD operations with pages

This section provides you with an overview of the Pages API in Sitefinity CMS and guides you through the common tasks when working with pages.

Sitefinity CMS back-end provides you with a user-friendly interface to create pages. You can also create pages programmatically using the Native or Fluent APIs.

Sitefinity CMS uses page nodes for the pages organization. When you create a page, you must attach it to a page node. You can create pages for the front-end or the back-end. When you create a page for the back-end you must add it to the taxonomy organizing the back-end navigation. When you create a page for the front-end, you must add it to the taxonomy organizing the public pages. Pages, created through the API or the UI, are saved in the database.

PageNode defines where the page is located in the navigation (the sitemap). The PageData is the content of the page. You can have a PageNode withoutPageData, for example, a group page or a redirecting page. You cannot create PageData without aPageNode. PageData is subject to content lifecycle and workflow.

Metadata information is located in PageNode. There is only one node containing the metadata and the page data items (one item per language). Thus, there are no limitations of the page tree structure  and you can have split and synchronized pages in all levels of the page tree.

Page components

The following scheme shows the page components:

You define the appearance and style of the page by setting a template and a theme. For more information about themes, see Overview: Themes. You use the template to define placeholders, background images and control styles. For more information about setting template to a page, see For developers: Apply page templates.

You define the functionality of the page by adding widgets. For more information about controls, see Overview: Built-in widgets.

Sitefinity CMS allows you to use the following types of controls:

  • Built-in Sitefinity CMS controls
    You can use the controls that Sitefinity CMS backend provides you. For example, Content block, Blog Posts, News, Events.
  • Standard ASP.NET controls
    You can use standard ASP.NET controls. For example, Hyperlink, Label, GridView, ObjectDataSource.
  • User controls
    You can use custom developed ASP.NET user controls. For a detailed step-by-step tutorial on creating controls, see Tutorial: Create a NewsRotator widget.
  • Custom controls
    You can use custom developed ASP.NET server controls. For a detailed step-by-step tutorial on creating controls, see Tutorial: Create a NewsRotator widget.
  • Module widgets
    You can use custom module widgets that represent the frontend functionality of the module. For more information about modules, see Overview: Custom modules.
  • Telerik RadControls for Silverlight
    You can use Telerik RadControls for Silverlight by wrapping them in an ASP.NET control. For a detailed step-by-step tutorial on creating Silverlight-based controls, see Tutorials: Create widgets.

For more information about managing controls in a page, see For developers: Add and remove widgets from pages.

Was this article helpful?