This topic is intended for administrators and developers with administration access rights in Episerver.
Properties are central in Episerver CMS. Content type properties store and present data, such as page types and block types, and they are fields where editors enter information into a page type. A property can be the page name, an image placeholder, or the editor area, where you can add text. For example, the XHTML editor is a property of the type XHTML String (>255), which results in an editorial area in the page type when used. For property content to be visible to visitors, link it to a content type with corresponding rendering.
You can define properties in code or from the administrative interface. For certain properties defined in code, you can create “non-breaking” changes in admin view to override these settings. If a property is defined in code and cannot be changed in admin view, information appears. If you make changes to a property defined in code, you can reset the changes to the values defined in code.
The following types of properties are used:
- Built-in properties are set by the system and are automatically available for all pages and blocks regardless of type. For example, PageName (name of the web page) and PageStartPublish (start publish date for the page).
- User-defined properties are added to the page or block type definition in code or from the admin view. Typical examples are Heading and MainBody.
You can locate property settings under the Config tab in the Property Configuration section, and under the Content Type tab when you work with content types.
A common example for editing properties is to define toolbar buttons for the TinyMCE rich-text editor. You normally define properties in code but occasionally add them in admin view, because properties added from there are not rendered.
When you edit and add properties, the following tabs are available:
- Common Settings is where you edit a property's common settings.
- Custom Settings depend on the property data type being editing.
The upper General section of the Common Settings tab contains information about a selected property. If a property is defined in code, information about it is displayed, but you cannot change values such as property type and presentation control. You can change other settings, such as making a property mandatory or searchable. The lower User Interface part contains settings related to the property display in edit view.
See Adding a Property below for information about available settings for properties.
- In admin view, from the Content Type tab, select a page type and click Add Property.
- Fill in the fields.
- Click Save.
Select a property type. You can choose from several property types: integer, string, page, date, and so on. You also can create a property type.
Name the property. This is used when programming and making language settings.
Use of multiple editors is supported but the TinyMCE editor is used most often, and the Presentation control drop-down list appears dimmed. If your website is configured to allow multiple editors and you chose the property type XHTML String (>255), the Presentation control drop-down list is enabled, and you can select the XHTML editor to use.
Select a value for the property. This is the default value on all pages where it is used. You can specify a default value for both customized and built-in properties.
|Value must be entered||
Select the check box to make it mandatory to enter a value for the property before saving. The setting is configured per property and content type.
Clear the check box to exclude a property from search. It might be beneficial to avoid undesired property values the search index. By default, all properties are searchable.
|Unique value per language||
Select whether the property is unique for a certain language. This is needed only if the website supports globalization.
|Display in edit view||
Determine if the property is visible in edit view. By default, all properties are visible in the editorial interface. The setting is configured per property and page type.
Specify a heading for the property. This text is displayed for the editor when editing the page in All Properties editing view unless a translation of it has been added language resources.
Specify a help text. This text should help the editor understand how to use this property, and is displayed in All Properties editing view when hovering over the property name.
Select the tab on which the property is to be displayed in the Tab drop-down list.
Select a relative number to sort this property among other properties.
The Custom Settings tab displays custom information for the selected property type. Here, you define available buttons in the toolbar of the TinyMCE rich-text editor, which is based on the property type XHTML string (>255).
When working with globalizationManaging content in multiple languages, and localizing the user interface., you define in every template which fields vary depending upon the language. To do this, set whether the property for that field should be “locked” or “open” for globalization. This is done using the Unique value per language setting in admin view.
Properties that have unique value per language are editable in all enabled languages on the website, which is normally the case. You can edit only properties that do not have language-specific values in the language in which the page was created (the original page language). These properties are disables in edit view with an icon indicating the original language.
Imagine the property defining the sort order field is not set as a unique value per language (that is, the Unique value per language check box is cleared). When creating a new page, you can set sort order in the original page language. But if you create a version of the page in another language, the sort order field is not editable. As a result, the sort order is the same for all enabled languages. If you want to change the sort order for each language, select the Unique value per language check box.
If a property is changed to not having a unique value, all existing values for that property are deleted. So if the property for the editor area is changed to not have a unique language, all text entered in the editor area for all languages on the website are permanently deleted.
- On the Content Type tab, select the page type that contains the property to be set.
- Click the name of the property that you want to change.
- Select the Unique value per language option.
- Save your changes.
You can alter the order in which properties are displayed to editors in a page or block type. You can also move properties between tabs in a page type. These changes are done for each page type in admin view.
Follow these steps to change the order in which properties appear in the All Properties editing view. For example, you can display important properties at the top of the page.
- Select the page or block type on the Page Type or Block Type tab.
- Click an arrow to move a property, or drag and drop the property to a desired order.
- Select the page type on the Content Type tab.
- Click the name of the property that you wish to modify.
- In the Tab drop-down list, select the tab on which the relevant property will be placed.
- Click Save.
On the Config tab under Property Configuration > Edit Custom Property Types, you can configure custom property types.
The property settings have the following priority:
- A specific setting for a property defined in admin view. This can be either a custom settings for this property or pointing to a specific global setting.
- A specific setting for a property defined for the model in code.
- A global setting defined in admin marked as the “Default” settings for the property type.
- A global setting defined in code.
You can create a property, name it, and give it a data type and other settings.
The list of available custom property types done by a developer has the following columns:
- Name. The name of the content type created by a developer, of which some are selectable in the editorial interface.
- Base type. Shows the built-in types that can be extended by a developer.
- Class name. Shows the full name of the class. The class is defined in the assembly.
- Assembly name. Shows the class reference. A blank column indicates a built-in property.
A developer can create property data types by inheriting from the existing available ones.
|Data type name||Base type||Description|
|Boolean||Selected/not selected||True or false.|
|FloatNumber||Floating point number||Number with decimals, for example, 3.14.|
|PageType||Page Type||Episerver CMS page type defined in admin view.|
|PageReference||Page||Link to an Episerver page in the current site.|
|Date||Date/Time||Date and time.|
|String||String (<=255)||Short text, fewer than 256 characters in length.|
|LongString||Long String (>255)||Used for text that can exceed 255 characters in length, for example the main editor area in edit view.|
|Category||Category selection||List of categories.|
|LinkCollection||Link collection||A collection of links that can be added and edited in edit view.|
Default values for properties are not defined in code.