Widget Template (Search Results)Widget Template (Search Results)https://liferay.dev/en/c/message_boards/find_thread?p_l_id=119785333&threadId=1213881682024-03-29T12:50:29Z2024-03-29T12:50:29ZRE: Widget Template (Search Results)Gennaro Lippiellohttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1213929012022-04-05T18:34:35Z2022-04-05T06:55:25Z<p>I did it! this is my code to get specifications:</p>
<pre>
<code><#if entries?has_content>
<#list entries as curCPCatalogEntry>
<#assign CPDefinitionLocalService = serviceLocator.findService("com.liferay.commerce.product.service.CPDefinitionLocalService")
CPDefinition = CPDefinitionLocalService.getCPDefinition(curCPCatalogEntry.getCPDefinitionId())
CPDefinitionSpecificationOptionValues = CPDefinition.getCPDefinitionSpecificationOptionValues()
/>
<#list CPDefinitionSpecificationOptionValues as cpdsov>
<#assign cpSpecificationOption = cpdsov.getCPSpecificationOption() />
<span>${cpSpecificationOption.getTitle(locale)}</span>
<span>${cpdsov.getValue()}</span>
</#list>
</#list>
</#if></code></pre>Gennaro Lippiello2022-04-05T06:55:25ZRE: RE: Widget Template (Search Results)Russell Bohlhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1213924542022-04-04T20:15:52Z2022-04-04T20:15:51Z<p>Great! You could make an answer with same content as your last
comment, then accept it as the answer.</p>Russell Bohl2022-04-04T20:15:51ZRE: RE: Widget Template (Search Results)Gennaro Lippiellohttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1213923172022-04-04T16:38:50Z2022-04-04T14:44:50Z<p>I did it! this is the my code to get specifications:</p>
<pre>
<code><#if entries?has_content>
<#list entries as curCPCatalogEntry>
<#assign CPDefinitionLocalService = serviceLocator.findService("com.liferay.commerce.product.service.CPDefinitionLocalService")
CPDefinition = CPDefinitionLocalService.getCPDefinition(curCPCatalogEntry.getCPDefinitionId())
CPDefinitionSpecificationOptionValues = CPDefinition.getCPDefinitionSpecificationOptionValues()
/>
<#list CPDefinitionSpecificationOptionValues as cpdsov>
<#assign cpSpecificationOption = cpdsov.getCPSpecificationOption() />
<span>${cpSpecificationOption.getTitle(locale)}</span>
<span>${cpdsov.getValue()}</span>
</#list>
</#list>
</#if></code></pre>
<p> </p>Gennaro Lippiello2022-04-04T14:44:50ZRE: RE: Widget Template (Search Results)Gennaro Lippiellohttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1213922932022-04-04T16:38:39Z2022-04-04T13:01:25Z<p>Hello Russell, thank you for your interest. No, I'm not getting
troubles because I'm doing it in a Widget Template.</p>
<p>I actually don't know how to get the specifications list starting
from a product (CPCatalogEntry object). In particular my question was
about the widget because in it I have this CPCatalogEntry list:</p>
<pre>
<code><#if entries?has_content>
<#list entries as curCPCatalogEntry>
//do something
</#list>
</#if></code></pre>
<p> </p>Gennaro Lippiello2022-04-04T13:01:25ZRE: Widget Template (Search Results)Russell Bohlhttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1213890102022-03-31T20:55:01Z2022-03-31T20:55:00Z<p>Hi Gennaro, is your question really about ow to use the CP services
and models to get all product specifications, or is there something
about doing it in a Widget Template for the Search Results widget that
is giving you trouble? </p>Russell Bohl2022-03-31T20:55:00ZWidget Template (Search Results)Gennaro Lippiellohttps://liferay.dev/en/c/message_boards/find_message?p_l_id=119785333&messageId=1213881672022-03-30T20:11:22Z2022-03-30T16:01:46Z