shopware 6:如何在更新 productrepository 时获取价格规则 ID
shopware 6: how can I get a price rule ID at updating productrepository
我对通过 Shopware 6 ProductRepository
以编程方式更新产品有疑问。我将更新我的产品的行动价格。
但是规则 ID 是必填字段。但是我怎样才能得到这个 Rule ID 字段?
$price = [[
'linked' => false,
'net' => (float)$netPrice,
'gross' => (float)$grossPrice,
'currencyId' => Defaults::CURRENCY,
]];
$prices = [
[
'quantityStart' => 1,
'ruleId' => '???', // How can I get this???
'quantityEnd' => 10,
'price' => [
[
'currencyId' => Defaults::CURRENCY,
'gross' => $actionGrossPrice,
'net' => $actionNetPrice,,
'linked' => false
]
]
]
];
那么我怎样才能得到这个规则 ID 字段呢?
很遗憾,您没有 post 完整代码,尤其是调用更新函数的部分。我假设您正在尝试设置产品的“高级定价”。
在以编程方式执行某些操作之前,最好检查一下它是如何手动完成的。
在管理面板(Shopware v6.4.3.0)中,创建高级价格规则也需要一个规则id:
这是指在设置 -> 商店 -> 规则生成器之前创建的规则。
有些规则是默认创建的,例如“所有客户”:
您可以在单击该规则时从 URL 中选择规则 ID,并在您的代码中使用它。
如果你为一个特定的商店写一个插件,这可能没问题。但其他店铺的规则会有所不同。
如果您正在为更广泛的受众编写插件,我建议制定要应用的规则configurable in the plugin configuration。
您当然也可以通过编程方式搜索“所有客户”规则 - 但它可能已被店主删除。
我对通过 Shopware 6 ProductRepository
以编程方式更新产品有疑问。我将更新我的产品的行动价格。
但是规则 ID 是必填字段。但是我怎样才能得到这个 Rule ID 字段?
$price = [[
'linked' => false,
'net' => (float)$netPrice,
'gross' => (float)$grossPrice,
'currencyId' => Defaults::CURRENCY,
]];
$prices = [
[
'quantityStart' => 1,
'ruleId' => '???', // How can I get this???
'quantityEnd' => 10,
'price' => [
[
'currencyId' => Defaults::CURRENCY,
'gross' => $actionGrossPrice,
'net' => $actionNetPrice,,
'linked' => false
]
]
]
];
那么我怎样才能得到这个规则 ID 字段呢?
很遗憾,您没有 post 完整代码,尤其是调用更新函数的部分。我假设您正在尝试设置产品的“高级定价”。
在以编程方式执行某些操作之前,最好检查一下它是如何手动完成的。
在管理面板(Shopware v6.4.3.0)中,创建高级价格规则也需要一个规则id:
这是指在设置 -> 商店 -> 规则生成器之前创建的规则。
有些规则是默认创建的,例如“所有客户”:
您可以在单击该规则时从 URL 中选择规则 ID,并在您的代码中使用它。
如果你为一个特定的商店写一个插件,这可能没问题。但其他店铺的规则会有所不同。
如果您正在为更广泛的受众编写插件,我建议制定要应用的规则configurable in the plugin configuration。
您当然也可以通过编程方式搜索“所有客户”规则 - 但它可能已被店主删除。