我正在更新数据Feed导出,它将产品链接到给定的类别。我还希望在该类别中包含该产品的销售位置,该位置目前存在于Business Manger中,并用于控制产品列表页面上的排序:
我正在深入研究API文档,以及在 dw.catalog.CategoryAssignment 中公开此信息的合理位置,但它并不存在。我目前通过基本上这样做来推断这个位置:
// assume var product, category
var position = category.products.firstIndex(p => p.ID == product.ID);
但是,这告诉我产品在哪里排序,不在Demandware中实际位置值是什么。它现在作为一个权宜之计,但我真的想用一些从DW中获取实际值的东西替换它。
在Commerce Cloud API中,我可以在给定类别中找到给定产品的销售位置吗?
答案 0 :(得分:0)
我认为您将获得产品索引的实际位置,因为您可能有多个排序规则来在类别列表页面上显示不同的输出。可以根据特定规则在需要时创建这些排序规则。我不认为这可以反映在产品Feed中。
答案 1 :(得分:0)
花了一些挖掘,但我设法找到了"位置" BM中的产品字段存储为Product.searchPlacement。要找到它,您必须查看Category.products,找到您想要的产品,并获取该产品的searchPlacement属性。
实际上,我使用了:
// assume var product, category
var position = category.products.find(p => p.ID == product.ID).searchPlacement;
对于未在业务经理中分配职位的产品,searchPlacement为0.否则,它会反映在BM中输入的值。