새로운 속성 값을 사용하여 프로그래밍 방식으로 WooCommerce 제품 변형을 생성하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-11-16 09:21:02
원래의
151명이 탐색했습니다.

How to Programmatically Create WooCommerce Product Variations with New Attribute Values?

새 속성 값으로 WooCommerce 제품 변형 생성

WooCommerce에서 가변 제품을 생성할 때 제품의 변형. 프로그래밍 방식으로 이를 수행하는 방법에 대한 단계별 가이드는 다음과 같습니다.

1. 제품 변형 데이터 정의:

속성 값, SKU, 가격, 재고 수량을 포함한 변형 데이터가 포함된 배열을 만듭니다. 아래에 예가 나와 있습니다.

$variation_data = [
    'attributes' => [
        'size' => 'M',
        'color' => 'Blue'
    ],
    'sku' => 'my-product-variation',
    'regular_price' => 19.99,
    'stock_qty' => 10
];
로그인 후 복사

2. 변수 제품 개체 가져오기:

변형을 추가하려는 변수 제품의 개체 가져오기:

$product = wc_get_product($product_id); // Replace $product_id with the actual product ID
로그인 후 복사

3. 변형 게시물 만들기:

신제품 변형에 대한 게시물 데이터 구성:

$variation_post = [
    'post_title' => $product->get_title() . ' Variation', // Set the variation title
    'post_name' => 'product-' . $product_id . '-variation',
    'post_status' => 'publish',
    'post_parent' => $product_id,
    'post_type' => 'product_variation',
    'guid' => $product->get_permalink()
];
로그인 후 복사

4. 변형 포스트 삽입:

새 제품 변형 생성:

$variation_id = wp_insert_post($variation_post);
로그인 후 복사

5. 속성 데이터 설정:

선택사항 속성을 반복하고 제품 선택사항에서 설정합니다:

foreach ($variation_data['attributes'] as $attribute => $term_name) {
    $taxonomy = 'pa_' . $attribute;
    update_post_meta($variation_id, 'attribute_' . $taxonomy, $term_name);
}
로그인 후 복사

6. 기타 데이터 설정:

SKU, 가격, 재고 수량과 같은 나머지 변형 데이터를 설정합니다.

$variation = new WC_Product_Variation($variation_id); // Get the variation object

if (!empty($variation_data['sku'])) {
    $variation->set_sku($variation_data['sku']);
}

$variation->set_price($variation_data['regular_price']);

if (!empty($variation_data['stock_qty'])) {
    $variation->set_stock_quantity($variation_data['stock_qty']);
}

$variation->save(); // Save the variation
로그인 후 복사

이 단계에 따라 프로그래밍 방식으로 새 속성을 사용하여 제품 변형을 생성할 수 있습니다. WooCommerce의 가치.

위 내용은 새로운 속성 값을 사용하여 프로그래밍 방식으로 WooCommerce 제품 변형을 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿