如何将自定义订单状态添加到Shopware 6

问题描述

对于shopware 6,我想向核心添加一些自定义订单状态。

使用DAL,我设法在激活插件添加了这些,但是现在在管理中无法选择。因此,我无法将订单更改为这个新的自定义状态。

有人可以帮助我选择此状态吗?

解决方法

当您查看state machine ERD时,会看到有关状态的相当复杂的设置。有一个名为state_machine_transition的表,在您的情况下可能会缺少一些条目:

state machine ERD

docs中,概述了交付状态的状态机,我认为是您的新状态。在状态机图中,您可以看到所有可用状态以及所有可用的过渡步骤从打开状态更改为另一状态。

delivery state machine

我认为您缺少这样的过渡步骤。添加过渡步骤后,管理机构应允许您逐步执行。确保集成您的新状态,以便在任何情况下都可以来回更改它。这样可以防止用户陷入僵局。

,

您可以使用方法 transition of class StateMachineRegistry

更改状态

这里是添加自定义状态到订单、订单交易、发货的正确方法 -

https://developer.shopware.com/docs/guides/plugins/plugins/checkout/order/using-the-state-machine