WooCommerce에서 사용자 정의 주문 상태를 추가하고 편집하는 방법

게시 됨: 2022-05-14

WooCommerce에서 사용자 정의 주문 상태를 추가하고 수정하시겠습니까? 고객의 주문 상태를 보다 명확하게 설명하는 데 매우 유용할 수 있습니다.

기본적으로 WordPress 및 WooCommerce에서는 사용자 지정 주문 상태를 추가할 수 없습니다. 그러나 코드의 도움으로 온라인 상점에 추가하고 즉시 편집할 수 있습니다. 그러나 프로세스를 시작하기 전에 WooCommerce에서 사용자 지정 주문 상태를 추가하거나 편집해야 하는 이유를 살펴보겠습니다.

WooCommerce에서 맞춤 주문 상태를 추가하고 수정하는 이유는 무엇입니까?

적절한 주문 상태 사용은 모든 온라인 상점에서 구매 프로세스를 보장하는 데 매우 중요합니다. 전자 상거래 웹 사이트에는 고객이 구매를 완료하기 위해 거쳐야 하는 몇 가지 단계가 있습니다. 물론 이러한 추가 단계로 인해 매출이 감소합니다.

또는 처리해야 하는 주문 상태가 적을수록 전자 상거래 상점의 판매율이 높아집니다. 또한 전체 웹 사이트를 보다 쉽고 간단하게 관리할 수 있습니다.

그러나 모든 경우에 최소한 두 가지 유형의 주문 상태가 필요합니다. 사용자가 성공적으로 주문할 때 첫 번째 유형의 주문 상태가 필요합니다. 지불 보류, 처리 또는 보류로 설정할 수 있습니다.

마찬가지로 주문이 완료된 것과 유사한 또 다른 주문 상태도 필요합니다. 여기서 고객은 결제를 하고 상품을 수령했을 수 있습니다. 다만, 부득이한 사유로 주문이 완료되지 않은 경우에는 실패, 취소, 환불로 처리될 수 있습니다.

따라서 WooCommerce에는 자유롭게 사용할 수 있는 다음과 같은 기본 주문 상태가 있습니다.

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

이러한 주문 상태는 모든 전자 상거래 웹사이트에 매우 적합합니다. 일반 웹사이트에서 사용할 수 있는 것 이상으로 충분합니다.

그러나 이러한 기본 상태가 여전히 충분하지 않다면 온라인 상점에 대한 몇 가지 사용자 정의 상태를 만들어야 합니다. 웹사이트에 추가하면 고객이 WooCommerce 주문 상태를 더 명확하게 이해할 수 있습니다. 예를 들어 주문 상태에서 고객의 주문이 대기 중임을 고객에게 구체적으로 알리려면 맞춤형 WooCommerce 주문 상태를 추가해야 합니다.

WooCommerce 맞춤 주문 상태를 만드는 방법은 무엇입니까?

WooCommerce 주문은 특별한 맞춤형 포스트 유형으로 취급됩니다. 따라서 다른 게시물 유형과 동일한 방식으로 데이터베이스의 wp_posts 테이블에 post_status 값이 첨부됩니다.

따라서 사용 가능한 상태 목록에 사용자 지정 주문 상태를 포함하려면 register_post_status() WP 내장 함수를 사용해야 합니다.

그러나 계속 진행하기 전에 프로그래밍 방식으로 또는 하위 테마 플러그인 중 하나를 사용하여 이러한 변경을 수행하여 하위 테마를 생성했는지 확인하십시오. 이렇게 하면 WordPress 테마를 업데이트할 때 테마 파일에 대한 사용자 정의가 변경되지 않습니다. 마찬가지로, 실수로 불필요한 수정이 이루어진 경우 웹사이트를 복원할 수 있도록 WordPress 웹사이트를 백업할 것을 상기시켜 드립니다.

1. functions.php 파일에 접근

WooCommerce에서 사용자 지정 주문 상태를 만들고 편집하려면 먼저 테마 기능 파일에 액세스해야 합니다. 먼저 WordPress 대시보드에서 모양 > 테마 파일 편집기 로 이동합니다. 그런 다음 화면 오른쪽의 테마 파일에서 " funtions.php " 파일을 선택합니다.

2. functions.php 파일에 코드 추가

이제 하위 테마의 functions.php 파일에 다음 스크립트를 복사하여 붙여넣습니다. 이렇게 하면 "통화 대기 중"이라는 새 사용자 지정 주문 상태가 생성됩니다.

 // 새로운 상태 등록
함수 register_wait_call_order_status() {
register_post_status( '화장실 대기 호출', 배열(
'label' => '통화 대기 중',
'공개' => 참,
'show_in_admin_status_list' => 참,
'show_in_admin_all_list' => 참,
'exclude_from_search' => 거짓,
'label_count' => _n_noop( '대기 호출(%s)', '대기 호출(%s)' )
) );
}
// 주문 상태 목록에 사용자 정의 상태 추가
기능 add_wait_call_to_order_statuses( $order_statuses ) {
$new_order_statuses = 배열();
foreach ( $order_statuss as $key => $status ) {
$new_order_status[ $key ] = $status;
if ( 'wc-on-hold' === $key ) {
$new_order_statuses['wc-waiting-call'] = '통화 대기 중';
}
}
반환 $new_order_statuses;
}
add_action( '초기화', 'register_wait_call_order_status' );
add_filter( 'wc_order_statuses', 'add_wait_call_to_order_statuses' );

여기서는 몇 개의 후크를 사용하고 있습니다. 첫 번째는 wp_init() 이며 새 상태를 등록하는 데 사용됩니다. 상태가 등록되면 이 함수는 더 이상 필요하지 않습니다. 완료 후 이 후크와 해당 함수 콜백을 제거할 수 있습니다.

두 번째는 사용 가능한 목록에 새 주문 상태를 포함하는 wc_order_statuses() 필터 후크입니다. 따라서 WooCommerce 관리자 대시보드에서 주문에 첨부할 때 사용할 수 있습니다.

WordPress 대시보드의 WooCommerce > 주문에서 주문을 편집할 때 새로운 맞춤 주문 상태를 볼 수 있습니다. 그런 다음 상태 옵션을 클릭하면 "통화 대기" 주문 상태가 드롭다운 메뉴에 표시됩니다.

woocommerce에서 맞춤 주문 상태 편집 맞춤 주문 상태 만들기

WooCommerce에서 기존 주문 상태 편집

또한 이전 샘플 스크립트 wc_order_statuses() 에서 본 것과 동일한 필터 후크를 사용하여 기존 주문 상태의 이름을 변경할 수 있습니다.

다음 샘플 코드는 "processing" 및 "completed"라는 두 가지 주문 통계를 편집하여 "in progress" 및 "delivered"로 변경합니다.

 기능 QuadLayers_rename_status( $order_statuses ) {
foreach ( $order_statuss as $key => $status ) {
if ( 'wc-processing' === $key ) {
$order_statuses['wc-processing'] = _x( '진행 중', '주문 상태', '우커머스' );
}
if ( '화장실 완료' === $key ) {
$order_statuses['wc-completed'] = _x( '배송 완료', '주문 상태', '우커머스' );
}
}
$order_status를 반환합니다.
}
add_filter( 'wc_order_status', 'QuadLayers_rename_status' );

코드를 추가한 후 파일을 업데이트하는 것을 잊지 마십시오.

그게 다야! 이것이 WooCommerce 웹사이트에서 기존 또는 사용자 정의 주문 상태를 편집하는 방법입니다.

woocommerce에서 사용자 정의 주문 상태 편집 주문 상태 이름 바꾸기 woocommerce

WooCommerce에서 주문 상태 제거

다시 말하지만 wc_order_statuses() 는 특정 주문 상태를 제거하는 데 유용합니다. 이 경우 "환불" 주문 상태를 제거합니다.

기존 주문 상태를 제거하려면 다음 스크립트를 사용하십시오. 이것은 기본 주문 상태와 사용자 정의 주문 상태 모두에서 작동합니다.

 기능 QuadLayers_remove_status( $statuses ) {
if( isset( $statuses['wc-refunded'] ) ){
unset( $statuses['wc-refunded'] );
}
$ 상태를 반환합니다.
}
add_filter( 'wc_order_statuss', 'QuadLayers_remove_status' );

기본 WooCommerce 주문 상태를 제거하면 일부 결제 게이트웨이와의 통합이 중단될 수 있습니다.

결론

다음은 코드를 사용하여 WooCommerce에서 사용자 정의 주문 상태를 추가하고 편집하는 다양한 방법 중 일부입니다. 기본 기존 WooCommerce 주문 상태도 편집하고 제거하도록 추가로 수정할 수 있습니다. 그러나 기본 주문 상태가 귀하와 고객의 요구 사항에 충분하지 않은 경우에만 새 사용자 지정 주문 상태를 추가하거나 기존 주문 상태를 편집하면 됩니다.

보시다시피, 온라인 상점에서 맞춤 주문 상태를 추가하고 편집하는 것은 정말 쉽습니다. 그러나 WooCommerce 후크를 사용하는 방법에 대한 기본적인 이해가 필요합니다. 마찬가지로 WooCommerce 주문에 대해 자세히 알아보려면 WooCommerce에서 주문을 테스트, 반복, 삭제 및 자동 완성하는 방법에 대한 자세한 가이드도 있습니다.

그래서 웹사이트에서 주문 상태를 편집하고 추가하려고 했습니까? 의견에 알려주십시오.

그 동안 귀하에게 도움이 될 수 있는 몇 가지 게시물을 자유롭게 살펴보세요.

  • 사용자 정의 WordPress 플러그인을 만드는 방법
  • 반복 주문을 위한 최고의 WooCommerce 플러그인
  • WooCommerce Checkout에 수수료를 추가하는 방법