2013-05-28 3 views
0

인 경우 WP Ecommence 플러그인을 사용자 정의하여 특정 카테고리의 두 항목마다 할인을 사용할 수 있도록했습니다. 카테고리가 $wpsc_cart 배열에 나열되어 있지만 이것이 작동하지 않으며 이유를 알 수 없습니다. 이상적으로 나는 이것을 더 간단한 것에 찬성하여 스크랩하고 싶습니다, 그리고 그것은 아래의 질문 2 부분을위한 것입니다.wp 전자 상거래 할인 - 제품이 카테고리

내 코드 -

foreach($wpsc_cart->cart_items->wpsc_cart_item as $cartItemDW){ 
     $ii = 1; 
     if(in_array('product-type-1',$cartItemDW->category_list) || in_array('product-type-2',$cartItemDW->category_list)){ 
      $ii++; 
     } 
    } 
    //Pull up end count 
    $prodCount = $ii; 
    //Round off to even number 
    if($prodCount % 2){ 
     $prodCount = $prodCount - 1;  
    } 
    // Discount for every second one 
    $prodCount = $prodCount/2; 
    // Discount of £70 per second item 
    $prodCount = $prodCount * 70.00; 
    // Pass discount to Paypal Array 
    if($discount > 0){ 
     $paypal_vars += array(
      'discount_amount' => $discount 
     ); 
    } 

나는 테이블 _wpsc_cart_contents의 항목 ID를 기반으로 카테고리 이름 (들)을 얻는 방법을 발견 한 다음 경우의 말씀을 전합니다 이상적으로 2 PART 특정 카테고리에서는 그에 따라 할인이 이루어 지므로 foreach보다 훨씬 쉬운 접근법이 가능합니다. 누군가 제품 ID를 기반으로 제품 카테고리를 얻는 방법을 설명해 주시겠습니까?

미리 감사드립니다. 댄

답변

0

는 foreach는 항목에 답 1 발견 - foreach는 후 나중에 다음

$prodID = $wpdb->get_row('SELECT * FROM wp_wpsc_item_category_assoc WHERE product_id = "'.$item['prodid'].'"'); 
      if($prodID->category_id == 10 || $prodID->category_id == 5 || $prodID->category_id == 23 || $prodID->category_id == 24 || $prodID->category_id == 25 || $prodID->category_id == 26){ 
       $addQuantity = $item['quantity']; 
       $i = $i + $addQuantity; 
       //$i++; 

      } 

하고, 2 항목 -

$prodCount = $i; 
$discount = 70.00 * ($prodCount/2); 

$data['discount_amount_1'] = number_format(sprintf("%01.2f", $discount),$decimal_places,'.',''); 
관련 문제