웹사이트 검색

WordPress에 대한 WooCommerce 맞춤 주문 상태 생성


WooCommerce는 온라인으로 제품을 판매할 수 있는 멋진 WordPress 플러그인입니다. 오늘은 맞춤 주문 상태를 생성할 수 있는 플러그인을 만드는 방법을 보여드리고자 합니다. 기본적으로 WooCommerce는 다음과 같은 주문 상태를 제공합니다.

  • 취소 된
  • 완전한
  • 실패한
  • 보류 중
  • 보류 중
  • 처리
  • 환불됨

하지만 새로운 상태를 추가하거나 기존 상태를 수정하고 싶다면 어떻게 해야 할까요? 다음은 WooCommerce 주문에 새 주문 상태를 추가하는 것이 얼마나 쉬운지를 보여주는 예입니다.

시각적으로 최종 결과는 다음과 같습니다.

새로운 WooCommerce 주문 상태 등록

이전에는 WooCommerce가 'shop_order_status' 분류를 사용했기 때문에 새로운 주문 상태를 추가하는 것이 약간 까다로웠지만 이제는 그 어느 때보다 쉬워졌습니다! 예제는 아래 코드를 살펴보세요.

// Register New Order Statuses
function wpex_wc_register_post_statuses() {
	register_post_status( 'wc-custom-order-status', array(
		'label'						=> _x( 'Custom Order Status Name', 'WooCommerce Order status', 'text_domain' ),
		'public'					=> true,
		'exclude_from_search'		=> false,
		'show_in_admin_all_list'	=> true,
		'show_in_admin_status_list'	=> true,
		'label_count'				=> _n_noop( 'Approved (%s)', 'Approved (%s)', 'text_domain' )
	) );
}
add_filter( 'init', 'wpex_wc_register_post_statuses' );

// Add New Order Statuses to WooCommerce
function wpex_wc_add_order_statuses( $order_statuses ) {
	$order_statuses['wc-custom-order-status'] = _x( 'Custom Order Status Name', 'WooCommerce Order status', 'text_domain' );
	return $order_statuses;
}
add_filter( 'wc_order_statuses', 'wpex_wc_add_order_statuses' );

여러 개의 새로운 주문 상태를 추가하려면 wpex_wc_register_post_statuses 함수 내에서register_post_status 함수를 원하는 만큼 복제하고 이에 따라 ID와 라벨을 변경하세요. 그런 다음 wpex_wc_add_order_statuses 함수의 $order_statuses 배열에 새 주문 상태를 추가합니다.