Widgets introduce support for the personalization of pages. This feature allows users and editors to edit the structure of page templates. The personalized settings are saved within the system and can be invoked from the live site by authorized users or through the CMS Desk interface in the case of website editors and administrators.
From a designer's point of view, widgets are the basic building blocks of page templates in the same way as web parts. Like web parts, they are placed into zones, which must be configured to contain a certain type of widgets. For more information about web development basics, such as page templates, please refer to the Developer's Guide -> Development -> Web development overview -> Portal engine development model chapter. Widgets may also be used on pages based on ASPX page templates as long as they contain the appropriate zones and are configured as described in ASPX page template development model -> Adding portal engine functionality to ASPX templates.
There is a predefined set of widgets included in the default Kentico CMS installation. A description of these widgets and their properties can be found in the Widgets reference guide. As all widgets are based on existing web parts, you can alternatively create your own widgets. Widgets can be created and managed at Site Manager -> Development -> Widgets. The details are given in the Developer's Guide -> Development -> Widgets -> Developing widgets topic.
As mentioned above, widgets provide the same functionality as ordinary web parts. However, users with the appropriate permissions can modify the properties of widgets and their placement on the web page, add and remove widgets from their pages and so on. Users are divided into four different groups according to the possible ways they can use widgets:
|•||Site developers/Administrators - define the placement of widget zones and their default content, select the web part properties that should be available when configuring widgets and manage all available widgets.|
|•||Page editors - define the content of widget zones created on page templates by the site developers/administrators.|
|•||Group administrators - define the content of widget zones located on the pages of their group via the live site.|
|•||Website users - customize the content of widget zones on personalizable pages via the live site.|
Widgets can additionally be added directly into editable text areas as described in the Inline widgets topic under the same chapter of the Developer's Guide.
Security issues, such as the definition of where individual widgets can be used and permissions for different types of roles are discussed in the Security topic.
The Widget internals and API sub-chapter provides information about the database tables and classes used by widgets and examples of how widgets can be managed using the API.
Dashboards in the administration interface also utilize widgets as customization components. Please refer to the Developer's Guide -> Modules -> Dashboards chapter for detailed information.