This release will allow users to generate a version of Liferay Workspace that is compatible with Gradle 8.
Release Notes
With our latest enhancements, Content Admins will enjoy effortless content organization, regardless of folder structures, along with enhanced filtering capabilities for precision content management discovery.
Features added in this Release:
Better experience to manage web content
In response to user feedback, several enhancements have been introduced for content creators. The first functionality addresses the challenge of easily finding and managing Web Content created within specific structures, allowing creators to review and edit content more efficiently. The other functionalities enable refined filtering and searching options, including the ability to search in the title, filter by categories and tag, filter search results and multi-select filters.
The Path Analysis tool has been enhanced with the addition of Exit Pages. This feature allows marketers to not only visualize users' entry points (referrer pages), but also their exit points (exit pages). With this user flow analysis, marketers can enhance user engagement and reduce bounce rates.
We have expanded the capabilities of AB Testing to allow the selection of a Collection Display Fragment as the Click Goal of an AB Test. This will allow customers to AB Test the clickthrough rate of different Collections or Collection Providers, empowering them to optimize which content is shown to end users.
This new feature provides the ability for the Order Manager to make refunds against on-line payments using the stand alone payment gateway. While the refund amount can be configurable, the refund is always made against the payment method of the original payment.
This feature decouples the payment gateway from the order engine in order to allow you to capture payments against objects and to support new payment methods via client extension.
In order to improve user experience and avoid difficulties with sharing and reporting insights from AC to other members of the organization, we are introducing the Download Reports feature. This functionality allows users to easily download their dashboards as PDFs and specific lists (e.g.: segment membership) as CSVs, streamlining the process of socializing this information with stakeholders.
You can use Liferay’s revamped organization management chart to view, manage, and search through organizations, associated accounts, and users. Users with permissions can now view or edit more details of it on the chart.
We are excited to introduce enhancements to streamline your cloud management experience! With our updated cloud console view, you will have a detailed breakdown of subscription metrics per environment, empowering you to manage resources more effectively. Additionally, our new storage consumption tracker offers real-time insights into project storage usage, ensuring you're always informed about quota limits.
Under all supported formats, users can select the origin and destination site of the data so it is possible to export and import object entries between any site.
With this improvement, the Data Migration Center allows users to export and import Object Entries using CSV files. Not all field types are supported but many of the most used ones are:
Supported field types: dateandtime, date, decimal, integer, longint, longtext, precissiondecimal, richtext, text and picklist.
In order to help users, only supported fields are available for exporting at the UI. As new types are allowed, they will appear available in the UI.
Pages served by Liferay might make use of third party cookies. In order to inform Liferay to manage them as part of the user cookie consent, now Portal developers and Content creators have a way to indicate the portal about them.
In order to make Liferay aware of them, the content creator or portal developer will need to update the markup to the following:
First, indicate the type of cookie following this format:
Second, change the markup depending on the element affected:
For example, embedding a video from a video provider, will see the markup changed in the following way:
- Before: <iframe src="..." />
- After: <iframe data-src="..." `data-third-party-cookie="CONSENT_TYPE_FUNCTIONAL" />
SCIM provides a unified, RFC compliant way to keep user/group data in sync between different applications. Liferay is a service provider and enables clients to be connected. Through the defined RESTful APIs and schemas, clients can perform CRUD operations to keep resources in sync.
We continue to improve the API Builder by adding new endpoints: GET single element. With the GET single element new endpoint, we allow users to create a GET endpoint that only retrieves a single element using a path parameter.
One particular thing is that users can select as a path parameter any unique custom field defined in the object apart from ID and External Reference Code.
New POST endpoint inside API Builder to add the possibility not only of recovering information of the entries but also of creating them.
As in the GET methods, users can define the schema to use for the request and the response. Both can be the same or two different ones. And can even be one already used previously on another endpoint definition.
Company and Site scope is available too.
The POST method only works for creating new entries of the main object . No entries for the related objects can be created yet at the same time.
We have introduced case-sensitive tagging for page creators, allowing tags to be saved and displayed exactly as created, whether in uppercase or lowercase. The feature ensures case sensitivity for tag creation, case-insensitive searching, and autocomplete, while maintaining backward compatibility for existing tags.
We have introduced a configuration feature within the Asset Library, enabling users to decide whether a Vocabulary created there is solely required at the Asset Library level or if it extends to the connected Sites as well.
Users now have the ability to restrict channel access to certain Accounts via the eligibility tab on the channel admin pages. The ability to restrict certain Account Addresses to be used on certain channels has also been added. This is managed via an Eligibility tab on the address that allows the user set channel usage.
Use the platform's configurable purchasing rules to dictate which product options need to be purchased together when setting up products with options. You can set which product options must be purchased together and/or which product options cannot be combined together to create a valid product bundle. You can also limit the number of products from a particular group of products that can be purchased together.
Two new permissions were added to View and Edit the channel default tab in the Account Management Pages. Users are now able to activate/inactivate the tab.
The ability for a buyer or sales agent to edit a product bundle directly from the mini-cart has now been added. Previously, if a change had to be made the bundle had to be deleted from the cart and added again. This allows more speedy alterations to be made before proceeding with check out.
The allowable size of an Account Name has been increased to 250 characters in line with industry standards.
Enables the ability to add new remote shipping calculations via client extension.
Ability to add new steps to the checkout process via client extension.
Users can add read-only fields to object definitions that automatically increment for each new entry.
Key Features:
Customize Starting values - Users can set a starting value. This flexibility allows for better alignment with specific business needs and workflows
Customize labels - Users can set prefixes and suffixes to provide alphanumeric keys appended to the incrementing values
When adding validations in Objects, many times it is necessary to validate dates against the current date.
Key Features:
Dynamic Date Comparison - Users can compare a selected date with the current system date. This empowers you to create rules that trigger based on the relationship between a date field and the present date.
Versatile Date Range Checks - Validate whether a date falls within a specified date range relative to the present date.
Users can add validations to verify field values that, when used in combination, are unique.
Limitation: numeric fields such as Integer, Long Integer, Decimal, Precision Decimal will be stored as null.
Validate relationships to prevent duplicate names in child objects.
Users are now able to properly search in the portal using the Search widget (in applications that have data restricted by account).
This development introduces the ability for the user to set the file size at asset library’s level. This settings will override the already existing one at System level when the latter is bigger. As a general rule, when both are set the lowest applies.
To reduce the maintenance costs of providing a full document’s preview, the following changes are being introduced:
“No preview available” state when the file size exceeds the preview size limit.
Merge “File Entries” and “PDF Preview” settings under “File Preview Limits”
Rename "File Size Limits" to "File Upload Limits" with a reviewed and more understandable Description copy
The user is being informed that the generated preview may not correspond to the entire document
Now user are able to:
Configuration of document size for copying in D&M
Bulk copying of documents and folders
Currently the copy action for documents and folders is able to be performed in Portal without fully respecting the site-asset library relationship. The expected behavior is:
An asset library must be connected to a site in order to copy a document over to the site
A document cannot be copied from a site to an asset library (only the other way around)
We can enforce a stricter check when performing the copy action between asset libraries and sites. Instead of the end user receiving a success message when copying a document to a disconnected site, an error message should appear telling the user to set the connection first.
Document Types contained in a document are being copied in Documents and Media so that they can be easily reused.
Categories and Tags in Documents and Media are being automatically copied so they can be easily reused on a new site.
With this development, the publication of Knowledge Base articles will be schedulable, in particular, the feature is so designed:
The primary Publish button will have an arrow down with the “Publish” option, that will immediately publish the article, and the “Schedule” one.
Clicking the Schedule option, will make a modal appear so the user can set a date and time for the article to be published.
The Scheduled article will have the SCHEDULED status that will change to APPROVED on the scheduled date
A tooltip with the scheduled date information will appear when hovering the
question-circle-fullicon placed next to the SCHEDULED state.
Editing a scheduled article will provide the user the ability, by clicking the primary button that has turned into “Scheduled”, to:
Cancel the operation
Publish Now
Schedule: this option will save the article, date & time changes and the user will return to the previous screen before entering edit mode
Additional feature: A Knowledge Base article deletion action will move it to the Recycle Bin so that it can be restored.
This feature allows you to leverage the functions of Liferay’s caching framework. Our current measurements indicate about 10%/30% performance increase in database writing operations, also 10 times faster reading performance!
The user experience of the Management Toolbar present in multiple applications (Web Content, Blogs, Documents & Media) has been improved:
- Separate sections for filter and order.
- Changed “+” with “New” for clarity.
- Moved info icon to the right.
Now, admins can customize the configuration of the Rich Text Editors with this new client extension, allowing them to set the toolbars that are available on different applications. In the form, you will have to define the instances in which the configuration will be taken into account as well as the JS that contains the configuration:
We refactored the way Liferay scripts were managed, so admins can define stricter policies like:
script-src '[$NONCE$]'; script-src-attr 'unsafe-inline';
Limitations: If a policy like the one above is configured, the parts of the product that uses a rich-text editor will not work correctly. Analyze your scenario to identify how strict your policy can be in order to make the solution work.
Now users can configure the values for the following properties from settings (system, instance or site settings):
session.timeout.auto.extendsession.timeout.auto.extend.offset
With this feature we extending the SCIM implementation with User Group un/provisioning as well with the User Group membership un/provisioning.
In order to improve the information we display at the Content Dashboard, we have added a new column with the Review Date value. With this new column, users have an easy way to view all contents where the review is needed. In addition, we have developed a new Filter to give the capability to show only the contents to be reviewed.
Note: This change will require a full reindex to work, so the new field can be propagated.
Filter by Review Date:
- All
- To be reviewed
We have refactored the Page Configuration and Page Design Options to make them homogeneous and consistent. Now, users can access Page Design Options as a section of the Page Configuration (they were two separate views before).
In addition to that, we have made the UX homogeneous and more consistent with new Clay component styles. We have also regrouped items according to what users intend to do, making it more logical and user friendly to configure.
This feature adds a HTML template that provides more context for the email notifications users get when Message Added Email and Message Updated Email are triggered on Message Boards.
For this, three new terms were added:
- Message siblings: message thread of messages at the same level.
- Message parents: the message body of the parent message.
- Root message body: the message body of the original message.
Ability to filter the user agent (all, human, bot) for each redirection pattern, in Configuration.
Users can set different permissions for download and for viewing documents.
Option of rating added to Folders and the endpoints for Documents rated by me, Folders rated by me have been created.
Provide users with a simple and effective way to view, access, and manage the Knowledge Base folder hierarchy. It is included:
- Drag and drop experience for moving content.
- Search for content in the Knowledge Base management.
- Using the action menu to manage folder.
Ability to set expiration and review dates for articles, and to view which articles are pending expiration.
The list of working in progress for Publishing features can be found at Publications update 2023/06/13. We have improved performance, while also making the wiki pages change tracked. It has also been implemented a mechanism to remove publications that are more than 6 months old.
This new feature allows content editors to view the only publications that included modifications to a particular asset.
With this new feature an admin should be able to help preconfigure a publication to help facilitate their unique workflows.
Publication templates can be leveraged to provide naming patterns to any created publication. Tokens are provided to allow each publication to have unique names.
Admins can also assign roles to users immediately during publication creation.
Users can now create, edit, or delete knowledge base articles within a publication.
Publications can take up quite a bit of space in the database. While some users need an extensive history, others do not.
With this new feature we can provide an optional clean up to remove older publications for those who do not need the history.
Users can preview the changes of a wiki page within a publication.
We have refactored Ongoing, Scheduled and History tabs to use dataset display, and added a configuration to speed up review changes screen.
Operating Liferay (on-prem!) with Elasticsearch 8 as a search engine leveraging its REST API compatibility mode through the bundled Elasticsearch 7 connector allowing Liferay deployments to upgrade the Elastic Stack to 8.x (opt-in), while also keeping compatibility with 7.x.
General Upgrade Instructions:
Please refer to the documentation for more details.
- No action is required for deployments already using and insisting to stay on Elasticsearch
7. - Moving to Elasticsearch
8may require a full reindex depending on the choice of the upgrade path:- Upgrading the current Elasticsearch
7.xcluster to8.xand connect DXP (Upgrade Elasticsearch | Elasticsearch Guide [8.10] | Elastic , recommended) → No reindex required - Setting-up a new Elasticsearch
8.xcluster, connect DXP → Reindex required!
- Upgrading the current Elasticsearch
This is not a new connector, but enhancements to the existing bundled Elasticsearch 7 connector and other Elasticsearch-only features (like Commerce, Workflow Metrics or Search Tuning) leveraging the REST API compatibility mode of Elasticsearch 8 servers.
Liferay Portal 7.4 CE GA78 and Liferay DXP 7.4 Update 78 Tomcat Bundles and Docker Images come with Elasticsearch 7.17.10 for Sidecar.
Support for Object displays pages in the search results, aggregating (via Custom Facet widget), filtering (Custom Filter widget) and sorting (Sort widget) using Object fields that are indexed as Nested Fields in Elasticsearch, similar to Web Content Structure (DDM) fields.
Automatically register a collection provider for each search blueprint. By displaying the blueprint's results in a collection display fragment, you can leverage search to return your assets dynamically, and reap the benefits of the fragments toolbox to lay out the page.
Search the company index for matching content through a single endpoint and build custom search experiences. Supports facets with translated display terms and also custom searching, filtering, aggregation and sorting through Search Blueprints (DXP ONLY)
Liferay Portal 7.4 CE GA88, Liferay DXP 7.4 Update 88 bundled with the latest available version of Elasticsearch 7.x for Sidecar (7.17.12, as of Aug 7, 2023).
With this new front-end client extension users will be able to add an entry to the global import map.
This can be used to share code between decoupled client extensions that are freed from the need to know the deployment URL of the code at build time. For example, this will allow you to share your library or framework of choice among all your front-end client extensions:
For a script to consume the JavaScript module referred to by the import map entry, it needs to be of type=module.
In order to help developers to understand how to use this client extension, a sample has been provided: https://github.com/liferay/liferay-portal/tree/master/workspaces/liferay-sample-workspace/client-extensions/liferay-sample-etc-frontend-2