4

我们需要在 Akeneo 1.4 中克隆一个产品(只有 SKU 应该改变)。

我在 Akeneo 论坛中发现了类似的问题 ( 1 , 2 ),但最有趣的部分没有答案:

  • 克隆产品(PimCatalogProduct)
  • 克隆产品值列表 (PimCatalogProductValue) 和属性
  • ...

我应该为此使用ProductPropertyCopier, , ... 吗?ProductTemplateBuilder

使用时是否需要存在目标属性ProductPropertyCopier

现在 Akeneo 1.4 中是否有更简单的方法来克隆产品?

4

1 回答 1

3

Akeneo 没有提供复制产品的本地方式,但这是一种常见的需求,我们知道这个问题,我们可能会在未来优先考虑它。

复制产品的最简单方法是对其进行规范化并在此之后立即对其进行非规范化:

$normalizedProduct = $this->serializer->normalize($sourceProduct, 'csv');
$duplicatedProduct = $this->serializer->denormalize(
    $normalizedProduct,
    'Pim\Bundle\CatalogBundle\Model\Product',
    'csv',
    [
         'entity' => new Pim\Bundle\CatalogBundle\Model\Product()
    ]
);

// You can now modify the product identifier :)

$this->productSaver->save($duplicatedProduct);

您的产品现在已复制并可以使用了!

于 2015-11-20T11:05:03.440 回答