AEM Content和Commerce创作选取器 cif-pickers

AEM Content & Commerce Authoring提供了一组创作工具,可帮助AEM作者和营销人员高效地使用商业产品数据和目录。 产品选取器和类别选取器是CIF加载项的一部分,由CIF核心组件使用。 项目可以在任何组件对话框中使用这些选取器来选择产品或类别。

产品选取器 product-picker

要在项目组件中使用产品选取器,开发人员必须将commerce/gui/components/common/cifproductfield添加到组件对话框。 例如,对cq:dialog使用以下对象:

<product jcr:primaryType="nt:unstructured"
    sling:resourceType="commerce/gui/components/common/cifproductfield"
    fieldDescription="The product or product variant displayed by the teaser"
    fieldLabel="Select Product"
    filter="folderOrProductOrVariant"
    name="./selection"
    selectionId="sku"/>

product字段允许导航到用户希望通过不同视图选择的产品。 默认情况下, product字段会返回产品的ID,但可以使用selectionId属性对其进行配置。

产品选取器字段支持以下可选属性:

  • selectionId(id、uid、sku、slug、combinedSlug、combinedSku) — 允许您选择将由选取器返回的产品属性(默认为id)。 在使用combinedSku时,使用sku会返回所选产品的sku并返回诸如base#variant之类的字符串以及基础产品和所选变体的sku;如果选择基础产品,则返回单个sku。
  • filter (folderOrProduct, folderOrProductOrVariant) — 筛选要在导航产品树时由选取器呈现的内容。 folderOrProduct — 呈现文件夹和产品。 folderOrProductOrVariant — 呈现文件夹、产品和产品变体。 如果呈现了产品或产品变体,它也会在选取器中变为可选状态。 (默认为folderOrProduct)
  • 多个(true, false) — 允许选择一个或多个产品(默认值= false)
  • emptyText — 配置选取器字段的空文本值

此外,也支持标准对话框字段属性,如namefieldLabelfieldDescription

CAUTION
cifproductfield组件需要cif.shell.picker客户端库。 要将clientlib添加到对话框,您可以使用extraClientlibs属性。
CAUTION
从CIF核心组件版本2.0.0开始,删除了id的支持并将其替换为uid。 Adobe建议使用skuslug作为产品标识符。 对于使用CIF核心组件版本1.x的项目,Adobe仍仅支持id

CIF核心组件项目中可以找到cifproductfield的完整工作示例。 另请参阅AEM核心组件文档的自定义对话框

类别选取器 category-picker

类别选取器可以在组件对话框中使用,其使用方式与产品选取器类似。

以下代码片段可以在cq:dialog配置中使用:

<category jcr:primaryType="nt:unstructured"
    sling:resourceType="commerce/gui/components/common/cifcategoryfield"
    fieldLabel="Category"
    name="./categoryId"
    selectionId="uid" />

类别选取器字段支持以下可选属性:

  • selectionId(id, uid, slug, urlPath, idAndUrlPath (已弃用), uidAndUrlPath (已弃用)) — 允许您选择选择器要返回的类别属性(默认为id)。
  • multiple (true, false) — 启用一个或多个类别的选择(默认值= false)

此外,也支持标准对话框字段属性,如namefieldLabelfieldDescription

CAUTION
cifproductfield组件相同,cifcategoryfield组件还需要cif.shell.picker clientlib。 要将clientlib添加到对话框,您可以使用extraClientlibs属性。 请参阅AEM核心组件文档的自定义对话框
CAUTION
从CIF核心组件版本2.0.0开始,删除了id的支持并将其替换为uid。 Adobe建议使用uidurlPath作为类别标识符。 对于使用CIF核心组件版本1.x的项目,Adobe仍继续支持ididAndUrlPath

CIF核心组件项目中可以找到cifcategoryfield的完整工作示例。

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2