GUI extensions
The GUI API allows you to add user interface controls to the Content Manager browser-based interfaces, add or modify behavior of new or existing controls, and hook up your own data to the GUI using a Data Model.
The topics in this section describe some typical simple extension scenarios. Note that they only describe how to build your own user interface in general terms. This is because such an implementation may consist almost entirely of your own code, and heavily depends on your decisions on how to set up this new interface.
- Introduction to GUI Extensions
The GUI API allows you to add custom controls to the Content Manager Explorer web interface and modify behavior of existing controls. You can also hook up your own data to the GUI using a Data Model. - Configuration files for SDL Tridion Sites user interfaces
An overview of the various configuration files that you can edit to configure the browser-based interfaces (Content Manager Explorer, and Experience Manager). - GUI extension concepts
SDL Tridion Sites has a GUI extensibility mechanism that supports a wide range of extensions, from one new button, linked to existing functionality, to a completely new user interface built from scratch. This section describes the concepts involved in extending the GUI. - Setting up an Editor
Create an Editor as a container for your extension resources. An Editor takes the shape of a Visual Studio solution that also contains a configuration file. The Editor's configuration file specifies which resources this Editor uses, and how they relate to each other and to the existing GUI. - Implementing and configuring a command
Implement a command by creating a JavaScript file that implements your custom functionality. Such a file may call Content Manager functionality or hook into an external application. Create a resource group for your JavaScript file, a command set to name your command, and if needed, another resource group to contain your command set. - Implementing the front end of your GUI extension
Enter a short description of your task here (optional). - Configuring a custom property to be searched in the slide-out navigation Activities screen
By default, the slide-out navigation Activities screen lets users search in a fixed set of Workflow Activity properties. If you have a custom property that you would also like the search interface to search in, you can add it to the set of searchable properties to make it searchable as well, and to make the property name appear in the tooltip of the search box. - Internationalizing GUI extension strings
Internationalize strings in GUI extensions to ensure that, say, Japanese users see Japanese GUI labels when they use your extension. - Extension example: adding a new column to a list view
In this example, you modify the data returned by aGetListcall and aGetListXmlcall to the Core Service by adding Schema information. With the Event Handler implemented, you can then add a column to a list view to show the new Schema information. - Data Extenders
Data Extenders intercept and change a GUI request to the Content Manager, or a response back. Data Extenders cannot modify a command, only its parameters. For example, you can makeGetList()retrieve different items, but not save them. Configure Data Extenders in your Editor configuration or in your Model configuration. - Creating a Model
For more advanced GUI extensions, such as completely customized GUI views, create a Model. Models can contain: Data Extenders; new Web services; and new or extended item types that call these Web services. You can either integrate your Model with your Editor, or it can be a standalone software component with its own virtual directory and configuration. - Forward compatibility of your GUI extension
Upgrading to a newer version may break your GUI extension: the XML format of content items may change, and the API and behavior of GUI controls may also change. Your own changes to the GUI remain unaffected, as do your Models. - Notification framework
The SDL Tridion Sites GUI core contains a notification implementation that can send out notifications for events occurring in the Content Manager. By default, this notification framework only sends notifications for save events (triggered by the creation or modifications of items), but you can add Event Handlers to send out notifications for other types of events too. You can add code to your GUI extension to catch these notifications and act on them. - Skinning the Content Manager Explorer
To make a clear, visible distinction between the different environments, you can skin the user interface. - Improving GUI performance
To optimize the Content Manager Explorer Web-based interface, cache resources that rarely change, disable monitoring of configuration files, and manually trigger updating of static resources. - Application Host
The Application Host is a webpage that creates and loads SDL Applications into iframes so that users can access multiple SDL Applications from a single URL. Typically, you add your SDL Applications to a single Application Host: this URL becomes the entry point for users to access their applications. The Application Host is already installed in SDL Applications that use it to define the application navigation structure that appears in the slide-out navigation pane.
Related concepts
Related tasks