Welcartの受注ステータスをカスタマイズする

2015.12.1

Welcartの受注ステータスに選択肢を増やしてみましょう。

今使っているテーマのfunctions.php内、

?>

の直前に記述します。

// 受注リストカスタマイズ

add_filter('usces_filter_management_status','my_filter_management_status', 10);
function my_filter_management_status($management_status){
    $management_status += array(
        'card-authority' => 'カード処理待ち',
        'cash-wait' => '振込待ち',
        'card-autority-ng' => 'カードNG',
        'stoporder' => '保留',
        'cream-post' => 'クレーム対応',
    );
    return $management_status;
}

このようにしておけばWelcart Management 受注リストの処理状態をより細かく把握できますね。

追記 新受注リストで一覧に反映されない問題を突貫工事で直す方法

Welcartのバージョンが1.9.4になっている場合で新規受注リストがアクティブのとき、上記だけでは受注一覧に追加ステータスが反映されません。冗長ですが、以下の通り。フォーラムに既にどうやればいいか載っているので今更ではありますけど。

function.phpを以下のようにします。

add_filter('usces_filter_management_status','my_filter_management_status', 10);
function my_filter_management_status($management_status){
    $management_status += array(
        'mail_ok' => 'メール生存確認',
        'mail_1' => '1回目送信',
    );
    return $management_status;
}

function my_filter_orderlist_process_status($process_status, $value, $management_status){
    global $usces;
    if( $usces->is_status('duringorder', $value) ){
        $process_status = esc_html($management_status['duringorder']);
    }elseif( $usces->is_status('cancel', $value) ){
        $process_status = esc_html($management_status['cancel']);
		}elseif( $usces->is_status('mail_ok', $value) ){
				$process_status = esc_html($management_status['mail_ok']);
		}elseif( $usces->is_status('mail_1', $value) ){
					$process_status = esc_html($management_status['mail_1']);
    }elseif( $usces->is_status('completion', $value) ){
        $process_status = esc_html($management_status['completion']);
    }elseif( $usces->is_status('preparation', $value) ){
        $process_status = esc_html($management_status['preparation']);
    }else{
        $process_status = esc_html(__('new order', 'usces'));
    }
    return $process_status;
}
add_filter('usces_filter_orderlist_process_status','my_filter_orderlist_process_status', 10, 3, 2);