webCOMAND

Sites Components

Sites Components extend the Base Sites Component to define specific types of content that can be managed within the Sections field of a Page.  Each component may add its own unique fields and define an HTML content type template used to publish instances of the component within the HTML of the Page.

Sites Components Class Diagram

Sites Component (aka Base Sites Component)

The Base Sites Component, which just has the title "Sites Component", provide a number of fields common to all components that extend it.

  • Status - Determines if the page should be included on the live website(s), staging website(s), both or neither.
  • Title - A name for the component, which is typically only visible and referenced in webCOMAND, but may be published by a components HTML content type method.
  • Class - Optional space-separated list of classes that should be included in the outer-most HTML element published by this component, in addition to any component-specific classes.
  • Anchor - Optional name for an anchor to place just before this component, to provide a jump point in the document.  If not specified, no anchor point will be published.
  • Attributes - Optional collection of attributes to add to the outer-most HTML element published by this component, in addition to any component-specific attributes.
  • Bindings - Optional collection of bindings that can be used to populate designated component fields based on content in a repository.   See Binding below for more information.

Binding

Used to populate a field or variable used by a component with content in the repository, and optional cTemplate.

  • Context - A query used to pull content from the repository.  See Context below for more information.
  • Context Field - The name of the field (or query SELECT alias) to pull from the query result.
  • Component Field - The name of the component field (or variable) to map the Context Field Value to.
  • Script - Optional cTemplate to evaluate to further process the Context Field Value, which is available as $Value.

Context

A query used to pull content from the repository.  A context can referenced to pull the first result, or iterate through any number of results using a List Component.

  • Title - Name of the context, only visible within webCOMAND.
  • cQL - A cQL query that will be performed when the context is evaluated.
  • When to Process - Determines if this context should be evaluated at Publish Time or Page Request Time.

Sites Attribute

A simple key/value pair to be included as an HTML element attribute.

  • Key - The attribute name, such as "id".
  • Value - The attribute value, such as "my-component".

Predefined Components

  • Adaptive Component - Defines a set of content options that will be displayed based on rules, at publish time or request time.  This is particularly useful at request time for personalization.
  • Adaptive Content - Defines a single content option within an Adaptive Component.
  • Audio - An audio file to embed in a page for download or within a player.
  • Block Component - Defines a block element, which typically corresponds to a block tag within the page's HTML hierarchy.  It can contain any number of components.
  • Columns - Defines columns within a page section or other component, which in turn have their own sections.
  • Embedded Media - A JavaScript embed code to display audio, video or other media typically hosted by a third-party like YouTube, etc.
  • File Attachment - Defines a file that can be linked from within a page.
  • Gallery Image - Defines an image within an Image Gallery.
  • Heading - Defines a heading to appear on the page.
  • Heading (Rich Text) - Defines a heading with optional HTML formatting.
  • Image - Defines an image to display within a page, along with an optional description, caption, link, alignment and crop hint for automatic resizing.
  • Image Gallery - Defines a collection of images that may be displayed in a slideshow or other format.
  • Intro Text - Defines a brief introductory block of text, typically at the beginning of a page or section.
  • List Component - Defines sections to display for each result from a Context.
  • Navigation - Produces a navigation menu for a root Navigation Page and it's children up to a maximum depth.
  • Plain Text - A simple string of text with no surrounding HTML elements.  Useful inside a Block Component.
  • Rich Text - A block of formatted text, which typically contains one or more paragraphs.
  • Rich Text & Image - Same as Rich Text, but with a corresponding image.  A number of image layout options are available, and the image can be automatically resized on publish and responsive.
  • Rich Text & Media - Same as Rich Text & Image, but may contain multiple inline images.
  • Rich Text & Quote - Same as Rich Text & Image, but a text quote is displayed instead of an image.
  • Row - Defines rows within a page section or other component, which in turn have their own sections.
  • cTemplate - A cTemplate that will be processed at publish time to produce arbitrary output, typically in the form of HTML.
  • Sections - Produces subsections within a single Page section.
  • Symbol Reference - A reference to a Symbol to be reused within a page.
  • Video - A video file to embed in a page for download or within a player.
  • Web Form Reference - Produces a web form on a page.

Custom Components

Your own custom components can be created by extending the base Sites Component, or build on one of the predefined components listed above.

For step-by-step instructions to create a Custom Component, see the Full Site Publication Tutorial.