우커머스(WooCommerce)가 무엇이며 어떻게 작동하는지 설명해 주십시오.

3분 읽기
2026-03-19
2026-06-04
2,587
아래 링크를 통해 쇼핑하면 추가 비용 없이 수수료를 받을 수 있습니다.

우커머스(WooCommerce)가 무엇이며 어떻게 작동하는지 설명해 주십시오.

WooCommerce는 WordPress 기반의 오픈 소스 전자 상거래 플러그인으로, 표준 WordPress 웹사이트를 완전히 기능적인 온라인 상점으로 전환할 수 있습니다. 이 플러그인의 핵심은 WordPress 콘텐츠 관리 시스템과 전자 상거래 기능을 연결하는 브리지입니다. 이 플러그인은 WooThemes에 의해 개발되었으며, 현재 Automattic의 소유물이며 WordPress 생태계와 밀접히 통합되어 있습니다.

그것의 작동 원리는 제품, 주문, 고객 정보 등 전자 상거래 데이터를 저장하기 위해 워드프레스 데이터베이스에 사용자 정의 데이터베이스 테이블을 추가하는 것입니다. 활성화되면, WooCommerce 플러그인을 설치한 후, 그것은 WordPress 관리자 인터페이스에 일련의 메뉴와 옵션을 추가하며, 동시에 스토어 페이지, 카트, 결제 페이지와 같은 필요한 페이지를 프론트 엔드에 생성합니다. 백엔드 로직은 일련의 액션 후크와 필터 후크(예: woocommerce_before_main_content 그리고 woocommerce_after_shop_loop_item개발자들이 기능과 외관을 자세히 사용자 정의할 수 있게 해주는 구현입니다.

이 플랫폼은 워드프레스의 맥락에서 약간의 조정이 있었지만, 전형적인 MVC(모델-뷰-컨트롤러) 아키텍처 패턴을 따른다. 데이터 모델(모델)은 제품 및 주문 클래스로 구성되어 있다. WC_Product 그리고 WC_Order관리; 표시 層(보기)은 테마 템플릿 파일에 의해 제어되며, 비즈니스 로직(컨트롤러)은 플러그인 코어와 다양한 후크에 의해 처리됩니다. 이러한 구조는 높은 유연성과 확장성을 보장합니다.

추천 읽기 2025년 워드프레스 쇼핑몰(WordPress Commerce) 최종 가이드: 제로에서 시작하여 온라인 상점을 구축하는 방법

첫 번째 WooCommerce 스토어를 설치하고 구성하는 방법

WooCommerce를 설치하는 절차는 다른 WordPress 플러그인을 설치하는 것과 같습니다. 가장 직접적인 방법은 WordPress 관리자 대시보드의 “플러그인”->“플러그인 설치” 페이지에서 검색 및 설치하는 것입니다.

UltaHost의 WordPress 호스팅 서비스
30일 환불 보장, 무제한 대역폭 및 데이터베이스 이용, 무료 DDoS 보호 서비스 제공. 3년 구매 시 50% 용량이 할인됩니다.

플러그인을 설치하고 활성화한 후 시스템은 설정 마법사를 시작하여 기본 구성을 완료하는 데 도움을 제공합니다. 이 단계는 매우 중요하며, 점포의 기본 구조를 결정합니다. 아래에서는 핵심 구성 단계에 대한 자세한 설명을 제공합니다.

상점의 기본 정보를 설정하십시오.

설정 마법사는 먼저 점포 주소, 통화 유형, 판매되는 상품 유형(물리적 상품, 디지털 상품 또는 두 가지 모두), 지불 방법 및 배송 지역의 사전 설정을 요구합니다. 예를 들어, 통화가 “人民元'으로 선택되면 플러그인은 데이터베이스에 해당하는 구성 옵션을 설정합니다.

이러한 설정들은 주로 WordPress에 저장됩니다. wp_options 표에서, woocommerce_ 접두사로 시작하는 옵션 이름을 저장합니다. 예를 들어, 점포 국가/지역 정보는 다음과 같은 위치에 저장됩니다. woocommerce_default_country 옵션 중에서. 이러한 기본 설정은 모든 후속 기능의 작동 기반을 제공합니다.

결제 및 배송 설정을 구성하십시오.

결제 및 배송은 전자상거래의 핵심입니다. WooCommerce에는 PayPal 표준 버전, 은행 송금, 수표 지불 등 다양한 결제 게이트웨이가 내장되어 있습니다. 이러한 결제 게이트웨이는 “WooCommerce” -> “설정” -> “결제” 페이지에서 활성화 및 구성할 수 있습니다. PayPal 결제의 경우, 판매자 계정의 이메일 주소와 API 키를 입력해야 합니다.

추천 읽기 WooCommerce 웹사이트 구축 완벽 가이드: 0에서 1까지, 기능이 풍부한 독립적인 전자상거래 사이트 만들기

배송 설정도 매우 중요합니다. “WooCommerce” - > “설정” - > “배송” 페이지에서 배송 지역을 추가할 수 있으며, 각 지역에 대해 무료 배송, 일관된 요금 또는 지역 픽업 등 서로 다른 배송 방법과 비용을 설정할 수 있습니다. 이 플러그인은 WC_Shipping_Method 이 클래스는 다양한 배송 방법을 추상화하여 개발자가 사용자 정의 배송 로직을 만들 수 있게 해줍니다.

일반적인 통일된 운송비 추가 요금 예시는 다음과 같을 수 있으며, 장바구니의 무게에 따라 추가 요금을 부과하는 데 사용됩니다.

add_filter( 'woocommerce_package_rates', 'add_shipping_surcharge_by_weight', 10, 2 );
function add_shipping_surcharge_by_weight( $rates, $package ) {
    $cart_weight = WC()->cart->get_cart_contents_weight();
    foreach ( $rates as $rate_key => $rate ) {
        if ( 'flat_rate' === $rate->method_id ) {
            if ( $cart_weight > 10 ) {
                $rates[$rate_key]->cost += 20;
            }
        }
    }
    return $rates;
}

확장 및 후크를 사용한 고급 사용자 정의

WooCommerce의 진정한 강점은 방대한 확장 라이브러리(공식적으로 “WooCommerce 확장'이라고 불림)와 개발자 친화적인 후크 시스템에 있습니다. 이를 통해 기본 기능을 넘어서서, 고유의 비즈니스 요구사항에 맞는 상점을 구축할 수 있습니다.

호스팅닷컴 공유 호스팅
AMD EPYC CPU, NVMe SSD 스토리지 및 LiteSpeed를 통한 고성능, 연중무휴 24시간 전문가 사내 지원, SSL, 무차별 공격, 멀웨어 및 DDoS 보호를 포함한 고급 보안 조치, 최대 73%의 비용 절감.

공식 확장 마켓은 구독 서비스, 예약 시스템, 회원 제 등 다양한 고급 기능 플러그인을 제공합니다. 그러나, 더 맞춤화된 요구 사항의 경우에는 액션 후크와 필터 후크를 사용하여 직접 개발하는 것이 표준 방법입니다.

제품 데이터의 사용자 정의 표시 구현

당신이 와인을 판매하고 있다고 가정해 보자. 제품 페이지에 “연도” 정보를 표시해야 합니다. WooCommerce는 사용자 정의 제품 필드를 쉽게 추가하고 프론트 엔드에 표시할 수 있게 해줍니다. 이는 일반적으로 제품 메타 박스와 템플릿 오버라이드를 함께 사용하여 구현됩니다.

먼저, 당신은 다음을 사용해야 합니다: woocommerce_product_options_general_product_data 제품 편집 페이지의 “일반” 탭에 한 필드를 추가하십시오. 그런 다음 이를 사용하십시오. woocommerce_process_product_meta 후크는 해당 필드 값을 저장합니다. 마지막으로, 이 값을 표시하려면 해당 제품 상세 템플릿 파일을 재정의해야 합니다. 일반적으로 이는 woocommerce/templates/single-product/ 카테고리 아래의 템플릿 파일을 당신의 테마 폴더로 복사하세요. your-theme/woocommerce/single-product/ 중국어 문장을 수정하십시오.

추천 읽기 WooCommerce 전자상거래 웹사이트 개발: 제로에서 시작하여 전문적인 온라인 상점을 구축하는 완벽한 가이드

예를 들어, price.php 템플릿 파일 근처에 사용자 정의 필드를 표시하는 코드 조각:

제품의 출시 년도를 표시하려면 _product_year 사용자 정의 필드에 저장된 년도를 표시해야 합니다.  
$year = get_post_meta( get_the_ID(), '_product_year', true );  
if ( $year ) {  
    echo '<p class="product-year">년도: ' . esc_html( $year ) . '</p>';
}

사용자 정의 결제 필드 만들기

결제 과정을 수정하는 것은 또 다른 일반적인 요구 사항입니다. 당신은 woocommerce_checkout_fields 필터 후크는 결제 양식의 필드를 추가, 제거 또는 수정하는 데 사용됩니다. 예를 들어, B2B 고객을 위한 회사 세금 번호 필드를 추가할 수 있습니다.

InterServer 공유 호스팅
공유 호스팅 월 $2.50 USD, 첫 달 $0.1 USD 프로모션 코드 tryinterserver, 461개 클라우드 앱 스크립트, 원클릭 설치.

아래 코드는 발전자 필드 영역에 사용자 정의 필드를 추가하는 방법을 보여줍니다.

add_filter( 'woocommerce_checkout_fields', 'add_custom_checkout_field' );
function add_custom_checkout_field( $fields ) {
    $fields['billing']['billing_vat'] = array(
        'label' => __( '增值税号', 'your-text-domain' ),
        'placeholder' => _x( '请输入您的公司税号', 'placeholder', 'your-text-domain' ),
        'required' => false, // 可以根据业务需求设置为 true
        'class' => array('form-row-wide'),
        'clear' => true,
        'priority' => 25, // 控制字段显示顺序
    );
    return $fields;
}

필드를 추가한 후에는 사용해야 합니다. woocommerce_checkout_update_order_meta 후크는 필드 값을 주문 메타데이터에 저장하고, 이를 사용합니다. woocommerce_admin_order_data_after_billing_address 이 钩子는 관리자 주문 세부 페이지에 그것을 표시할 것입니다.

성능 최적화 및 보안 최선 실천사항

점포 규모가 커지고 제품 및 주문 수량이 증가함에 따라 성능 및 보안 문제가 점점 더 분명해집니다. 느렸거나 불안전한 점포는 전환율과 고객 신뢰에 직접적인 영향을 미칩니다.

성능 최적화의 첫 번째 단계는 고품질의 호스트를 선택하고 캐싱을 구현하는 것입니다. WooCommerce의 경우, 장바구니와 결제 페이지는 동적이며 사용자 세션을 포함하기 때문에 특별히 처리해야 합니다. 이러한 페이지는 일반적으로 전체 페이지 캐싱에서 제외됩니다. 객체 캐싱(Redis 또는 Memcached 등)을 사용하면 데이터베이스 쿼리 집약적인 작업의 속도를 상당히 향상시킬 수 있습니다. 예를 들어, 상점 주요 페이지에 많은 제품을 나열할 경우 성능이 향상됩니다.

데이터베이스 질의와 이미지 로드 최적화

WooCommerce를 운영하는 동안에는 많은 데이터베이스 쿼리가 발생합니다. 최적화는 데이터베이스 테이블의 인덱스가 올바르게 설정되어 있는지 확인하는 것부터 시작할 수 있습니다. 또한, 만료된 세션 데이터를 정기적으로 삭제하는 것도 중요합니다(이 데이터는…). wp_woocommerce_sessions 표 및 완료된 주문의 오래된 로그wp_wc_admin_notes 예를 들어, 인덱스는 데이터베이스의 크기를 줄일 수 있습니다.

영상은 일반적으로 페이지 크기의 주요 구성 요소입니다. 모든 제품 사진이 적당히 압축되어야 하며, WebP와 같은 현대적인 형식을 사용해야 합니다. WooCommerce는 기본적으로 다양한 크기의 사진을 생성하며, 이러한 사진의 크기는 “설정” > “미디어'에서 관리할 수 있지만, 더 나은 방법을 사용하는 것이 좋습니다. add_image_size() 함수는 당신의 주제 디자인 요구사항에 따라 정확한 사진 크기를 정의하며, 불필요한 사진 생성을 방지합니다.

상점의 보안 설정을 강화하세요.

보안이 최우선입니다. 우선, 관리자 계정을 보호하기 위해 항상 강력한 암호를 사용하고 2FA(이중 인증)를 활성화하십시오. WordPress 核心, WooCommerce 플러그인, 테마 및 모든 다른 확장 프로그램을 최신 버전으로 업데이트하여 알려진 취약점을 패치하십시오.

결제 보안을 위해서는 SSL 인증서를 사용해야 하며, 특히 결제 페이지를 포함한 전체 웹사이트가 HTTPS를 통해 접근되어야 합니다. 이는 강제 활성화를 통해 가능합니다. FORCE_SSL_CHECKOUT 이 설정을 향상시키기 위한 상수를 사용하십시오.

In wp-config.php 파일이 추가됩니다:

define( 'FORCE_SSL_CHECKOUT', true );

또한, 로그인 시도를 제한하고, 보안 키를 사용하며, 정기적으로 보안 스캔을 실시하며, 사용자가 업로드한 파일(예: 제품 리뷰를 통해 업로드된 사진)을 엄격하게 검증 및 소독하는 것은 필수적인 보안 조치입니다. 민감한 고객 데이터를 처리하는 점포의 경우, 더 엄격한 규정을 준수할 것을 고려해보십시오.

요약

WooCommerce는 WordPress 생태계의 핵심으로서, 강력한 전자상거래 기능과 비교할 수 없는 유연성과 접근 가능성을 결합하여 성공을 달성했습니다. 간단한 설치 및 구성에서부터 직관적인 설정 마법사와 백엔드 관리, 그리고 방대한 확장 라이브러리와 심층적인 후크 시스템을 통한 무제한 사용자 정화에 이르기까지, WooCommerce는 모든 규모의 비즈니스가 이상적인 온라인 상점을 구축할 수 있도록 해 줍니다. 동시에, 상점이 성장함에 따라 데이터베이스 성능, 이미지 최적화, 그리고 종합적인 보안 강화에 주의를 기울이는 것은 상점이 안정적이고 빠르고 안전하게 운영되도록 하는 열쇠입니다. 신생 기업이나 성숙한 기업 모두 WooCommerce의 핵심 원리와 최고 사례를 습득함으로써 디지털 상거래 분야에서 강력하고 유연한 선두 주자가 될 수 있습니다.

자주 묻는 질문

WooCommerce 스토어 페이지의 사이드바를 어떻게 숨길 수 있습니까?

주제 파일(theme file)에서 조건부 태그(condition tags)를 사용하여 사이드바를 제거할 수 있습니다. 가장 일반적인 방법은 `sidebar.js`와 같은 파일을 생성하고, 그 안에 다음과 같은 코드를 추가하는 것입니다: woocommerce.php 당신의 테마에 기반하여, 당신의 테마 루트 디렉토리에 템플릿 파일을 저장하세요. page.php 문서를 수정하고 특정 정보를 제거하십시오. get_sidebar() 함수의 호출.

더 유연한 방법은 이용하는 것입니다. is_shop() 조건부 태그와 후크를 사용하세요. 예를 들어, 당신의 자식 테마의 functions.php 다음 코드를 파일에 추가하여 WooCommerce 스토어 페이지에서 사이드바를 제거하십시오:

add_action( 'wp', 'remove_sidebar_on_shop' );
function remove_sidebar_on_shop() {
    if ( is_shop() ) {
        remove_action( 'woocommerce_sidebar', 'woocommerce_get_sidebar', 10 );
        // 或者,如果你的主题使用不同的侧边栏钩子
        // add_filter( 'is_active_sidebar', 'deactivate_sidebar_on_shop', 10, 2 );
    }
}

이를 통해 다른 페이지에 영향을 미치지 않고 오직 상점 메인 페이지에서만 사이드바를 숨길 수 있게 됩니다.

기본 “장바구니에 추가” 버튼의 텍스트를 변경할 수 있습니까?

물론입니다. 이 버튼의 텍스트를 변경하는 몇 가지 방법이 있습니다. 가장 간단한 방법은 Loco Translate 같은 번역 플러그인을 사용하여 “장바구니에 추가하기” 문자열을 원하는 언어로 번역하는 것입니다(예: “지금 구매하기”). 이 방법은 코드를 작성할 필요가 없습니다.

다른 방법은 필터 후크를 사용하는 것입니다. woocommerce_product_add_to_cart_text(아카이브 페이지에 사용되는 경우) 및 woocommerce_product_single_add_to_cart_text(단일 제품 페이지용). 당신의 테마에서. functions.php 다음 코드를 추가하세요:

add_filter( 'woocommerce_product_add_to_cart_text', 'change_archive_add_to_cart_text' );
function change_archive_add_to_cart_text() {
    return __( '立即订购', 'your-text-domain' );
}

add_filter( 'woocommerce_product_single_add_to_cart_text', 'change_single_add_to_cart_text' );
function change_single_add_to_cart_text() {
    return __( '加入购物车', 'your-text-domain' );
}

필터 후크를 사용하면 변형 제품, 그룹화된 제품 등 제품 유형에 따라 더 정교한 제어가 가능합니다.

사용자 역할에 따라 다른 제품 가격을 설정하는 방법

사용자 역할에 따라 가격을 설정하는 것은 고급 기능으로, 일반적으로 사용자 정의 코드를 개발하거나 WooCommerce Memberships 또는 Wholesale Suite와 같은 전문적인 회원제/도매 가격 확장 기능을 사용해야 합니다. 코드를 통해 구현할 경우, 핵심 개념은 다음과 같습니다. woocommerce_get_price 필터 후크는 제품 가격을 동적으로 수정합니다.

아래는 기본 예시로, “wholesaler” 사용자 역할의 고객에게 20%의 할인을 제공하는 예입니다:

add_filter( 'woocommerce_get_price', 'apply_role_based_pricing', 10, 2 );
function apply_role_based_pricing( $price, $product ) {
    if ( is_user_logged_in() && current_user_can( 'wholesaler' ) ) {
        $price = $price * 0.8; // 打八折
    }
    return $price;
}

이 코드는 단순히 개념 증명일 뿐입니다. 실제 애플리케이션에서는 성능(가격을 캐시할 수 있음), 카트 및 주문 표시의 호환성, 세금 계산과 상호 작용하는 방법 등을 고려해야 합니다. 생산 환경에서는 잘 테스트된 확장 기능을 사용하는 것이 더 안정적인 선택입니다.

WooCommerce의 일반적인 화면 표시 문제를 어떻게 디버그할 수 있는가?

WooCommerce의 “화이트 스크린 오브 데스(WSOD)”는 대부분 PHP 오류로 인해 발생하며, 오류 메시지는 숨겨져 있습니다. 먼저, 웹사이트의 wp-config.php 파일에서 WordPress 디버그 모드를 활성화하십시오. 해당 파일에서 다음 정의를 찾거나 추가하십시오:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_DISPLAY', false ); // 防止错误直接输出到屏幕
define( 'WP_DEBUG_LOG', true ); // 将错误记录到 /wp-content/debug.log 文件

추가한 후 화이트 스크린이 발생하는 페이지를 다시 방문해 보세요. 그런 다음 위치에 있는 항목을 확인해 보세요. wp-content 카테고리 아래에 있는 debug.log 메모리 고소비, 구문 오류, 특정 테마/플러그인과 충돌하는 등 문제를 일으킨 구체적인 오류 정보가 기록된 파일입니다.

WooCommerce와 관련된 일반적인 문제 원인으로는 테마나 플러그인 간의 충돌(플러그인을 하나씩 비활성화하고 기본 테마로 전환하여 문제를 확인하는 방법), PHP 메모리 제한이 부족한 경우 등이 있습니다. wp-config.php 중국어 추가 define( 'WP_MEMORY_LIMIT', '256M' );또한, 破坏된 WooCommerce 데이터베이스 테이블이 있을 수 있습니다(WooCommerce 상태 도구에서 “기본 WooCommerce 테이블 만들기'를 실행하거나 데이터베이스 수리 플러그인을 사용해 보십시오).