/o//commerce-media/accounts/-1/images/18604856?download=true
Mega pack of responsive layout templates for Liferay 7.1
DXP App
Arcaduce layout templates provides various responsive layouts for your
Liferay 7.1 pages.
Layouts have different stacking breakpoints which enables you perfect targeting for your
user base to achieve great user experience on every device (smartphone, table, PC etc.).
Breakpoints are 575 px, 767 px, 991 px and 1279 px.
The best way to figure out which devices uses your users the most is to look for these stats in
tools such as Google Analytics etc. and then use layout with breakpoint which suits the majority of
your users to achieve best user experience.
Please note that, in one drop-zone there could be multiple Liferay widgets under each other.
Layout sets has different thumbnail colors for quick recognition at Liferay control panel
which enables you high productivity while creating new pages.
Layouts HTML markup is developed according to Twitter Bootstrap 4 HTML/CSS framework rules, which is part
of Liferay 7.1, that means that they are universal and could be used with any Liferay 7.1 theme.
After deployment to Liferay server instance, layouts are available for all Liferay Sites/Themes.
To change layout of the page:
1.) login to Liferay Control Panel
2.) under your Liferay Site click Build
3.) then click to Pages
4.) on each page click on three dots and then click on Configure
5.) select which layout you want to use and click Save
Layouts have different stacking breakpoints which enables you perfect targeting for your
user base to achieve great user experience on every device (smartphone, table, PC etc.).
Breakpoints are 575 px, 767 px, 991 px and 1279 px.
The best way to figure out which devices uses your users the most is to look for these stats in
tools such as Google Analytics etc. and then use layout with breakpoint which suits the majority of
your users to achieve best user experience.
Please note that, in one drop-zone there could be multiple Liferay widgets under each other.
Layout sets has different thumbnail colors for quick recognition at Liferay control panel
which enables you high productivity while creating new pages.
Layouts HTML markup is developed according to Twitter Bootstrap 4 HTML/CSS framework rules, which is part
of Liferay 7.1, that means that they are universal and could be used with any Liferay 7.1 theme.
After deployment to Liferay server instance, layouts are available for all Liferay Sites/Themes.
To change layout of the page:
1.) login to Liferay Control Panel
2.) under your Liferay Site click Build
3.) then click to Pages
4.) on each page click on three dots and then click on Configure
5.) select which layout you want to use and click Save
DEVELOPER
Virhe tapahtui prosessoidessa esitysmallia.
The following has evaluated to null or missing: ==> publisePages.items [in template "3192443#3192485#null" at line 36, column 38] ---- 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 publisePage = publisePages.items [in template "3192443#3192485#null" at line 36, column 17] ----
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")
27 productSpecifications = product.productSpecifications![]
28 catalogName=product.catalogName
29/>
30
31<#if catalogName?has_content>
32 <#assign publisePages=restClient.get("/c/publisherdetailses?filter=publisherName eq '${catalogName}'" ) />
33 <#assign redirectPath="https://marketplace.liferay.com/e/publisher-details/29282497"/>
34
35 <#if publisePages?has_content>
36 <#assign publisePage=publisePages.items />
37 <#if publisePage?has_content>
38 <#assign publisherDetail=publisePage[0]/>
39 </#if>
40 </#if>
41</#if>
42
43<div>
44 <#if productSpecifications?has_content>
45 <#assign developerNames = productSpecifications?filter(item -> stringUtil.equals(item.specificationKey, "developer-name")) />
46
47 <#if developerNames?has_content>
48 <#list developerNames as developerName>
49 <#if publisherDetail?has_content>
50 <a class="bg-neutral-8" href="${redirectPath}/${publisherDetail.id}">
51 ${developerName.value}
52 </a>
53 <#else>
54 <a class="bg-neutral-8" href="/?developer-name=${developerName.value}">
55 ${developerName.value}
56 </a>
57 </#if>
58 </#list>
59 </#if>
60 </#if>
61</div>
DEVELOPER
21.11.2024 18:34
Published date
21.11.2024 18:34
Published Date
21.11.2024 18:34
SUPPORTED OFFERINGS
Liferay PaaS, Liferay Self-Hosted
Supported Versions
7.1
Resource Requirements
Edition
CE, EE
PRICE
Paid
help & support
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.