В Woocommerce я не могу установить заказ на один из моих статусов пользовательских заказов: 'wc-order-waiting-to-abort'
. Я создал 3 других пользовательских статуса, и все они работают нормально и могут быть установлены в порядке.
Я сделал то же самое для этих пользовательских статусов.
Странно то, что пользовательский статус появляется в выпадающем списке в WooCommerce, я могу выбрать его, но когда я нажимаю «Сохранить заказ», статус не сохраняется и остается прежним. Когда я выбираю другой пользовательский статус и нажимаю сохранить, статус успешно сохраняется.
Нет журналов ошибок, предупреждений, ничего. Это так странно.
Вот мой код:
add_action( 'init', 'register_new_order_states_and_status' );
function register_new_order_states_and_status() {
//Bestellung in Bearbeitung
register_post_status( 'wc-order-in-progress', array(
'label' => 'Bestellung in Bearbeitung',
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop( 'Bestellung in Bearbeitung <span class="count">(%s)</span>', 'Bestellung in Bearbeitung <span class="count">(%s)</span>' )
) );
//Abbruchbestätigung ausstehend
register_post_status( 'wc-order-waiting-to-abort', array(
'label' => 'Abbruchbestätigung ausstehend',
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop( 'Abbruchbestätigung ausstehend <span class="count">(%s)</span>', 'Abbruchbestätigung ausstehend <span class="count">(%s)</span>' )
) );
//Bestellung abgeschlossen
register_post_status( 'wc-order-finished', array(
'label' => 'Bestellung abgeschlossen',
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop( 'Bestellung abgeschlossen <span class="count">(%s)</span>', 'Bestellung abgeschlossen <span class="count">(%s)</span>' )
) );
//Bestellung abgenommen
register_post_status( 'wc-order-accepted', array(
'label' => 'Bestellung abgenommen',
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop( 'Bestellung abgenommen <span class="count">(%s)</span>', 'Bestellung abgenommen <span class="count">(%s)</span>' )
) );
}
/**
* Add new order states to WooCommerce
*/
add_filter( 'wc_order_statuses', 'add_new_order_states' );
function add_new_order_states( $order_states ) {
$new_order_states = array();
foreach ( $order_states as $key => $status ) {
$new_order_states[ $key ] = $status;
if ( $key === 'wc-completed' ) {
$new_order_states['wc-order-in-progress'] = 'Bestellung in Bearbeitung';
$new_order_states['wc-order-waiting-to-abort'] = 'Abbruchbestätigung ausstehend';
$new_order_states['wc-order-finished'] = 'Bestellung abgeschlossen';
$new_order_states['wc-order-accepted'] = 'Bestellung abgenommen';
}
}
return $new_order_states;
}
Любая помощь приветствуется.