カスタム注文ステータスの詳細をWooCommerce Admin Dashboard Statsウィジェットに含めたいと思います。 wc-processing
の2つの注文ステータスを設定しました。成功した支払の後管理ダッシュボードの統計情報ウィジェットにカスタム注文ステータスを追加する
ご注文の流れは次のとおりです。
wc-processing
=>wc-awaiting-shipment
=>wc-dispatched
=>wc-completed
。
awaiting shipment
とdispatched
カスタムオーダー状態であるとして、WooCommerceは統計ウィジェットは、総売上高におけるそれらの注文を反映していません。問題は、多くの注文があることです。wc-dispatched
とのステータスがあります。
/**
* Register new status
* Tutorial: http://www.sellwithwp.com/woocommerce-custom-order-status-2/
* */
function register_awaiting_shipment_order_status() {
register_post_status('wc-awaiting-shipment', array(
'label' => 'Awaiting Shipment',
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop('Awaiting shipment <span class="count">(%s)</span>', 'Awaiting shipment <span class="count">(%s)</span>')
));
}
add_action('init', 'register_awaiting_shipment_order_status');
// Add to list of WC Order statuses
function add_awaiting_shipment_to_order_statuses($order_statuses) {
$new_order_statuses = array();
// add new order status after processing
foreach ($order_statuses as $key => $status) {
$new_order_statuses[$key] = $status;
if ('wc-processing' === $key) {
$new_order_statuses['wc-awaiting-shipment'] = 'Awaiting shipment';
}
}
return $new_order_statuses;
}
add_filter('wc_order_statuses', 'add_awaiting_shipment_to_order_statuses');
/**
* Register new status
* Tutorial: http://www.sellwithwp.com/woocommerce-custom-order-status-2/
* */
function register_dispatched_order_status() {
register_post_status('wc-dispatched', array(
'label' => 'Dispatched',
'public' => true,
'exclude_from_search' => false,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true,
'label_count' => _n_noop('Dispatched <span class="count">(%s)</span>', 'Dispatched <span class="count">(%s)</span>')
));
}
add_action('init', 'register_dispatched_order_status');
// Add to list of WC Order statuses
function add_dispatched_to_order_status($order_status) {
$new_order_statuses = array();
// add new order status after processing
foreach ($order_status as $key => $status) {
$new_order_statuses[$key] = $status;
if ('wc-awaiting-shipment' === $key) {
$new_order_statuses['wc-dispatched'] = 'Dispatched';
}
}
return $new_order_statuses;
}
add_filter('wc_order_statuses', 'add_dispatched_to_order_status');
どのように私はこれを達成することができます
これは私がこのカスタムオーダーステータスを登録するために使用したコードのですか?
ありがとうございました。
@LoicTheAztec:私は今、旅行してるので、今それをテストすることはできません、8hr後に更新することができます。通知しなかったことを申し訳ありません。 –