/o//commerce-media/accounts/-1/images/18601668?download=true

Website Builder
DXP App
Analytics and Optimization
18601614
Create Liferay sites easily with “Website Builder”. This helps non-technical or users who are not very familiar with Liferay Admin features to create sites inside Liferay.

A great utility to help portal admins or end users to create Liferay sites with pre-built site templates. This utility provides a great addition, if you are building a SaaS based portal on Liferay.

“Website Builder” has a 5-step easy wizard to create a site in Liferay. It allow user to add site meta information, select theme templates, preview site before creation.

Users can configure following site level settings while creating sites:
* Site admin details
* Site details - Name, Description, Logo
* Site type - Public/Private
* Site membership settings

“Website Builder” is built with Angular, which means it doesn’t require whole page refresh and performs very fast.

In-built multi-language support for English, German, French, Russian, Chinese.

If you need any support in extending this portlet for your specific requirement or have a problem with this portlet, please contact us at enquiry@surekhatech.com

More features coming soon. Stay Connected!
DEVELOPER
DEVELOPER
21-11-24 18:33
Published date
21-11-24 18:33
Published Date
21-11-24 18:33
SUPPORTED OFFERINGS
Liferay PaaS
Supported Versions
Er trad een fout op tijdens de verwerking van de sjabloon.
The following has evaluated to null or missing:
==> channel.items  [in template "3192443#3192485#null" at line 18, column 30]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign channelId = channel.items[0].id  [in template "3192443#3192485#null" at line 18, column 9]
----
1<#if themeDisplay?has_content> 
2	<#assign scopeGroupId = themeDisplay.getScopeGroupId() /> 
3</#if> 
4 
5<#if currentURL?has_content> 
6	<#if currentURL?contains('web')> 
7		<#assign 
8			index = 2 
9			partsUrl = currentURL?split('/') 
10			siteName = partsUrl[index..index]?join('/') 
11		/> 
12	</#if> 
13</#if> 
14 
15<#assign channel = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels?accountId=-1&filter=name eq 'Marketplace Channel' and siteGroupId eq '${scopeGroupId}'") /> 
16 
17<#if channel?has_content> 
18	<#assign channelId = channel.items[0].id /> 
19</#if> 
20 
21<#if (CPDefinition_cProductId.getData())??> 
22	<#assign productId = CPDefinition_cProductId.getData() /> 
23</#if> 
24 
25<#assign 
26	product = restClient.get("/headless-commerce-delivery-catalog/v1.0/channels/"+ channelId +"/products/"+ productId +"?accountId=-1&nestedFields=productSpecifications&productSpecifications.pageSize=-1") 
27	specifications = product.productSpecifications![] 
28/> 
29 
30<div> 
31	<#if specifications?has_content> 
32		<#assign 
33			liferayVersionSpecification = specifications?filter(item -> stringUtil.equals(item.specificationKey, "liferay-version")) 
34		/> 
35 
36		<#if liferayVersionSpecification?has_content> 
37		 	<#list liferayVersionSpecification as liferayVersion> 
38				<#assign liferayVersionValue = liferayVersion.value /> 
39 
40				<#if liferayVersionValue?has_content> 
41					${liferayVersionValue}<#if liferayVersion?has_next>,</#if> 
42				</#if> 
43		  </#list> 
44		</#if> 
45	</#if> 
46</div> 
Resource Requirements
Edition
CE
PRICE
Paid
help & support
SHARE LINK
Copy & Share

HTML Example

A paragraph is a self-contained unit of a discourse in writing dealing with a particular point or idea. Paragraphs are usually an expected part of formal writing, used to organize longer prose.