If a search request includes a facet or constraint based on the price
property created by the PriceListPropertyProvider
, the search client must determine which meta
tag in the XHTML output to use to obtain the value for price
.
To do this, the /atg/commerce/search/PriceListPropertyMapping
component checks the user’s profile to determine which price lists are assigned to it. It then creates an XML tag for mapping the price
property in the query to the XHTML meta
tags associated with those price lists. The XML tag is stored in the PriceListPropertyMapping
component’s priceMapping
property. The value of this property is typically:
<propertyMapping>
price,childSKUs.price@salePrices,childSKUs.price@listPrices
</propertyMapping>
This tag tells ATG Search how to get the value for the price
property:
If an XHTML document includes a
meta
tag associated with thesalePrices
price list, use the value from that tag.Otherwise, use the value from the
meta
tag associated with thelistPrices
price list.
To include the XML tag in the search request, the propertyMappings
property of the /atg/commerce/search/ProductCatalogParserOptions
component is linked to the PriceListPropertyMapping.priceMapping
property:
propertyMappings^=\
/atg/commerce/search/PriceListPropertyMapping.priceMapping