Capability

Content Management System

Liferay’s Content Management System (CMS) offers user-friendly applications for creating, editing, publishing, and managing your site’s content.

Liferay empowers you to create and manage web content effectively. Easily create web content, upload documents, and leverage a suite of tools to administer and optimize your content. These tools include a user-friendly Content Dashboard UI, built-in Translation capabilities, and Content Performance insights.

Feature
Deployment Approach
Objects
Objects Liferay 7.4+ With Liferay Objects, you can build and deliver applications without having to write code or deploy modules. Each application built with Objects is integrated with Liferay's...
Defining Object Actions
Defining Object Actions Liferay 7.4 U60+/GA60+ Object actions define operations that you can run manually or automatically for object entry events. To add an action, Open the Global Menu (...
Using Manual Actions
Using Manual Actions Liferay 7.4 U60+/GA60+ When you use the standalone trigger for object actions, the actions become manual instead of automatic. Trigger these actions using these methods: ...
Fields
Fields Liferay DXP 2023.Q4+/Portal GA102+ Object fields are data definitions that represent database columns and store different types of values. All objects include default system fields, but you...
Aggregation Fields
Aggregation Fields Liferay 7.4 U47+/GA47+ Aggregation fields perform basic calculations on the entries from a relationship table and display the resulting values. Available aggregation functions...
Activating and Deactivating Objects
Activating and Deactivating Objects Custom objects are activated when published. While active, you can use the object to create entries via the Liferay UI or dedicated REST APIs. If needed, you can...
Auditing Object Events
Auditing Object Events Liferay 7.4 U72+/GA72+ You can use Liferay's audit framework to track events for custom object definitions and their entries. To track entry events, you must enable entry...
Creating Objects
Creating Objects Liferay DXP 2023.Q4+/Portal GA102+ Liferay Objects provides development capabilities in the Liferay UI. Using Objects, you can build fully integrated Liferay applications without...
Deleting Objects
Deleting Objects Liferay 7.4 U26+/GA26+ You can delete draft and published object definitions. Deleting a definition removes its associated data, including the stored entries for published...
Exporting and Importing Object Definitions
Exporting and Importing Object Definitions Liferay 7.4 U68+/GA68+ You can export and import object definitions as .json files. These files include the definition's complete schema (e.g.,...
Extending System Objects
Extending System Objects Liferay 7.4 U86+/GA86+ With Liferay Objects, you can extend supported system services. Currently, only these services are integrated with the Objects framework: Account...
Adding and Managing Custom States
Adding and Managing Custom States Liferay 7.4+ Some use cases may require assigning multiple states to an object entry at the same time. For example, when building an Order application, you may...
Adding Fields to Objects
Adding Fields to Objects Liferay DXP 2023.Q4+/Portal GA102+ Fields are data definitions that represent database columns and store different types of values. By default, all objects include these...
Encrypted Fields
Encrypted Fields Self-Hosted and PaaS Only Liferay 7.4 U72+/GA72+ Liferay provides the encrypted field type for storing sensitive user data. To use encrypted fields, first add an encryption...
Formula Fields
Formula Fields Liferay DXP 2023.Q4+/Portal GA102+ Formula fields store read-only values calculated using numeric fields in the object definition. Example use cases include calculating an...
Using Read-Only Fields
Using Read-Only Fields Some use cases may require data fields to be read-only. For example, data integrity may require some field values to remain immutable, or you may need to prevent unauthorized...
Designing Object Layouts
Designing Object Layouts Liferay 7.4 U31+/GA31+ Layouts define how fields and relationships appear when creating and editing object entries. Each layout can include multiple tabs containing...
Attachment Fields
Attachment Fields Attachment fields are for uploading files to your instance's Document Library. When uploaded, the file is linked to the entry's attachment field, and each field can only be linked...
Auto-Increment Fields
Auto-Increment Fields DXP 2024.Q1+/Portal GA112+ Auto-Increment fields are configurable read-only fields for uniquely identifying object entries in a human-readable format. For example, an IT...
Picklist Fields
Picklist Fields Liferay 7.4 U72+/GA72+ Picklists define lists of text values usable as single select or multi-select fields in object definitions. By default, single select fields appear as...
Layouts
Layouts Liferay 7.4+ Object layouts define how fields and relationships appear when creating and editing entries. All published objects include an autogenerated layout with a single tab that lists...
Adding Categorization to Fields Tabs
Adding Categorization to Fields Tabs Liferay 7.4 U31+/GA31+ You can add categorization blocks to fields tabs so end users can apply tags and categories to object entries. Follow these steps: ...
Managing Objects with Headless APIs
Managing Objects with Headless APIs Liferay 7.4+ You can create and manage objects from the Applications menu, but you can also use Liferay's REST APIs. Call these services to create and manage...
Organizing Objects with Folders
Organizing Objects with Folders By default, object definitions are grouped in the Uncategorized folder, but you can add object folders to organize data models and manage access to definitions. ...
Defining Object Relationships
Defining Object Relationships Liferay 7.4+ Relationships add fields and tables to object definitions for relating their entries to one another. Follow these steps to add relationships to object...
Removing Relationships
Removing Relationships Liferay 7.4 U26+/GA26+ You can remove relationships from both draft and published object definitions. Removing a relationship permanently deletes its field from the related...
Restricting Access to Object Data by Account
Restricting Access to Object Data by Account Liferay 7.4 U58+/GA58+ In scenarios with multiple business accounts, you may want to restrict access to object entries by account. For example,...
Adding Field Validations
Adding Field Validations Liferay DXP 2023.Q3+/Portal GA92+ Validations set rules for determining valid field entries. Each validation has its own trigger, conditions, and error message, which you...
Relationships
Relationships Liferay 7.4 U47+/GA47+ Relationships add fields and tables to object definitions for relating their entries with one another. This provides access to entry data in different...
Using System Objects with Custom Objects
Using System Objects with Custom Objects
Accessing Accounts Data from Custom Objects
Accessing Accounts Data from Custom Objects Liferay 7.4 U35+/GA35+ In some use cases, you may want to access account data from a custom object. For example, if you're building a custom returns...
Using the Objects Model Builder
Using the Objects Model Builder [Liferay DXP 2023.Q4+/Portal GA102+](#model-builder-availability) For Liferay DXP 2023.Q4+/Portal GA102+, you must have Object Folder → View permissions to...
Validations
Validations Liferay 7.4+ Object validations set rules for determining valid field inputs. You can define validations with Groovy scripts, Liferay expressions, or a specified Composite Key...
Expression Builder Validations Reference
Expression Builder Validations Reference Liferay 7.4 U67+/GA67+ You can create object field validations using Liferay's Expression Builder. This tool provides an integrated editor for quickly...
Designing Object Views
Designing Object Views Liferay 7.4+ Views define how entries appear in an object's application page. Though each published object has an autogenerated view, you can create your own. Design custom...
Renaming Table Columns
Renaming Table Columns Liferay 7.4 U21+/GA21+ With custom views, you can change and localize the display name for table columns so you can serve your global users and ensure the table's naming...
Setting a Default Sorting
Setting a Default Sorting Liferay 7.4 U18+/GA18+ With custom views, you can set a default sorting for tables. Follow these steps: Begin editing the desired view and go to the Default Sort tab. ...
Deploying Object Widgets to Sites
Deploying Object Widgets to Sites Liferay 7.4+ When an Object is published, Liferay automatically generates a dedicated widget you can deploy to site pages. This includes both site-scoped and...
Managing Data from External Systems
Managing Data from External Systems [Release Feature](../../../security-and-administration/administration/configuring-liferay/feature-flags.md#release-feature-flags) Liferay Objects provides...
Views
Views Views define how entries appear in an object's application page. All published objects include an autogenerated table that displays all field columns alphabetically. However, you can design...
Adding Filters to Views
Adding Filters to Views Liferay 7.4 U49+/GA49+ When designing a custom view, you can determine which fields appear as filter facets. Also, you can set default filters that apply automatically to...
Displaying Object Entries with Collections
Displaying Object Entries with Collections Liferay 7.4 U77+/GA77+ When you publish an object definition, Liferay creates a collection provider for it. For site-scoped objects, you can also create...
Integrating Objects with Third Party Services
Integrating Objects with Third Party Services You can use Liferay Objects with popular data integration tools to create automated tasks for syncing Object data with external services. These tasks...
Using Objects with Salesforce
Using Objects with Salesforce [Release Feature](../../../../security-and-administration/administration/configuring-liferay/feature-flags.md#release-feature-flags) With Liferay, you can create...
Objects Application Permissions
Objects Application Permissions Liferay DXP 2023.Q4+/Portal GA102+ The Objects application is integrated with the permissions framework, so you can assign application and resource permissions to...
Understanding Object Integrations
Understanding Object Integrations Published custom objects are integrated with Liferay's core frameworks, so you can leverage Liferay's features to build unified experiences across the platform....
Creating the Role Change Request App
Creating the Role Change Request App Subscribers The Role Change Request App starts with the employee submitting a request form. Processing then proceeds to the Current Manager, then to the...
Deploying WARs (WAB Generator)
Deploying WARs (WAB Generator) You can create applications as Java EE-style Web Application ARchive (WAR) artifacts or as Java ARchive (JAR) OSGi bundle artifacts. Bean Portlets, PortletMVC4Spring...
Tooling
Tooling Liferay provides a variety of developer tools that include standard build scripting, lightweight CLI utilities, and full IDE based on Eclipse. This is to serve all developers, whether...
App Builder
App Builder Liferay CE/DXP 7.3 (deprecated and removed in 7.4) App Builder is a low-code application development solution for Liferay DXP. Build a data model, define the application's forms (for...
Creating a Standard Application
Creating a Standard Application To create applications based on a custom object takes four steps: create the object, create at least one form view, create at least one table view, and deploy the...
Creating a Workflow Powered Application
Creating a Workflow Powered Application Subscribers Workflow Powered Applications require data from multiple stakeholders. These process-driven applications can go through multiple stages before...
Creating the Role Change Request Object
Creating the Role Change Request Object Subscribers Consider a Human Resources application that collects employee requests to change Roles within the software engineering department: the Role...
JARs Excluded from WABs
JARs Excluded from WABs [Liferay-generated web application bundles (WABs) are stripped of third party JARs that contain packages that Liferay exports already. Deploying the same third party...
Blade CLI
Blade CLI Blade CLI can be installed through a command line interface or a graphical installer. If you're behind a proxy, once it's installed you can configure it to operate through the proxy....
Troubleshooting Blade CLI
Troubleshooting Blade CLI If Blade CLI isn't working as expected, you may find answers here. The blade command is not available in my CLI The Blade CLI installer adds the blade command to your...
Generating Projects with Blade CLI
Generating Projects with Blade CLI Blade CLI exists to create, build, and deploy Liferay projects in Liferay Workspaces. Once created, these projects can be imported into an IDE or worked on...
Liferay Workspace
Liferay Workspace Liferay Workspace is a set of folders and Gradle scripts that represents the Liferay-opinionated way of handling a full development life cycle: Creating projects Building...
Other Tools (Deprecated)
Other Tools (Deprecated) These tools are deprecated as of Liferay 2024.Q4/Portal GA129, and they are planned for future removal. Modern browsers (and Liferay DXP) all support including JavaScript...
Liferay CLI Tool
Liferay CLI Tool The Liferay CLI tool is deprecated as of Liferay 2024.Q4/Portal GA129, and it's planned for future removal. The Liferay CLI tool makes it easy to create Angular, JavaScript,...