it-source

WooCommerce 카트에 카트 아이템의 제품 ID를 가져옵니다.

criticalcode 2023. 2. 8. 18:00
반응형

WooCommerce 카트에 카트 아이템의 제품 ID를 가져옵니다.

$cart_item = $woocommerce->cart->get_cart(); 

위 코드가 있습니다.

cart_item에서 print_r을 실행하면 다차원 배열이 나타납니다.

Array(    [a6292668b36ef412fa3c4102d1311a62] => Array        (            [product_id] => 6803

product_id만 가져오려면 어떻게 해야 하나요?

$test =를 시도했습니다.$cart_item['data'];

print_r($test);

효과가 없었다.

foreach 루프에 있는 각 카트 항목을 얻으려면(단순한 제품의 경우)

foreach( WC()->cart->get_cart() as $cart_item ){
    $product_id = $cart_item['product_id'];
}

가변 제품인 경우 다음을 수행합니다.

foreach( WC()->cart->get_cart() as $cart_item ){
    $variation_id = $cart_item['variation_id'];
}

또는 두 경우 모두(여기서는) $cart_item['data'] WC_Product Woocommerce 3+의 객체:

foreach( WC()->cart->get_cart() as $cart_item ){
    // compatibility with WC +3
    if( version_compare( WC_VERSION, '3.0', '<' ) ){
        $product_id = $cart_item['data']->id; // Before version 3.0
    } else {
        $product_id = $cart_item['data']->get_id(); // For version 3 or more
    }
}

업데이트: 루프 외부에서 제품 ID 사용

1) 루프 차단(카트의 번째 항목 ID(제품 ID)를 얻기 위해):

foreach( WC()->cart->get_cart() as $cart_item ){
    $product_id = $cart_item['product_id'];
    break;
}

직접 사용하실 수 있습니다.$product_id카트 내 첫 번째 항목의 변수입니다.


2) 제품 ID 배열 사용(카트의 품목에 하나씩)

$products_ids_array = array();

foreach( WC()->cart->get_cart() as $cart_item ){
    $products_ids_array[] = $cart_item['product_id'];
}
  • 첫 번째 아이템 제품 ID를 얻으려면:
  • 두 번째 아이템 제품 ID 취득 방법 등

카트 항목에서 제품 범주 또는 제품 태그확인하려면 WordPress를 사용합니다.

foreach( WC()->cart->get_cart() as $cart_item ){
    // For product categories (term IDs, term slugs or term names)
    if( has_term( array('clothing','music'), 'product_cat', $cart_item['product_id'] ) ) {
        // DO SOMETHING
    }

    // For product Tags (term IDs, term slugs or term names)
    if( has_term( array('clothing','music'), 'product_tag', $cart_item['product_id'] ) ) {
        // DO SOMETHING ELSE
    }
}

항상 사용하고 있습니다.$cart_item['product_id']카트 품목이 제품 변형일 때 부모 변수 제품을 얻을 수 있기 때문입니다.

제품 변형은 제품 카테고리 및 제품 태그로 사용자 지정 분류를 처리하지 않습니다.

언급URL : https://stackoverflow.com/questions/41104409/get-in-woocommerce-cart-the-product-id-of-a-cart-item

반응형