0 レビュー
1 回答
php-カートへのWoocommerceの複数の製品が機能していませんか?
woocommerceカートに複数のカスタム商品を追加する際に問題が発生しました。プログラムで複数の商品をカートに追加する方法。以下のコードを確認して、アドバイスしてください。テンプレートフォルダであるカスタムページにこのコードがあります。
$values = array();
$post_values = array();
$i=0;
foreach($_POST['post_quantity'] as $key =>$value){
/*$lastid[$i] = multiple product inserted id's */
$wpdb->insert('wp_posts', array(
'post_title' => 'xxxxx xxx ID: '.$_POST['quoted_sid'][$key].' - Product ID: '.$_POST['product_id'][$key],
'post_content' => $_POST['product_description'][$key],
'post_date' => date('Y-m-d H:i:s'),
'post_status' => 'publish',
'post_author' => 1,
'post_type' =>'product'
));
$lastid[$i] = $wpdb->insert_id;
$date[$i] = date('Y-m-d H:i:s');
add_post_meta($lastid[$i], '_regular_price', $_POST['product_price'][$key]);
add_post_meta($lastid[$i], '_price', $_POST['product_price'][$key]);
add_post_meta($lastid[$i],'_visibility','visible');
add_post_meta($lastid[$i], '_stock_status', 'instock' );
add_post_meta($lastid[$i], '_weight', '11' );
add_post_meta($lastid[$i], '_sku', 'Quoted xxxx_'.$_POST['product_id'][$key] );
add_post_meta($lastid[$i], '_duplicate_price', $_POST['product_duplicate_price'][$key] );
add_post_meta($lastid[$i], '_material', $_POST['product_material'][$key] );
$i++;
//$woocommerce->cart->add_to_cart( $lastid[$i], $quantity=$_POST['post_quantity'][$key], $cart_item_data );
}
$woocommerce->cart->add_to_cart( $lastid[$i],
$quantity=$_POST['post_quantity'][$key], $cart_item_data );
以下の関数が機能しているように試しましたが、quanityやその他のcart_item_data_fieldsを追加する方法がわかりません
$product_ids = filter_var_array( $lastid, FILTER_SANITIZE_SPECIAL_CHARS );
foreach ( $product_ids as $product_id ) {
$woocommerce->cart->add_to_cart( $product_id );
}
数量およびその他のcart_item_dataフィールドを渡す方法。
わからない
0
レビュー
答え :
解決策:
関数呼び出しで数量の変数代入の値を渡します。したがって、割り当て結果がfalseを返す場合、値はfalseになります。事前に割り当てられた変数または実際の式の値を渡す必要があります。
(関数定義を宣言する場合、デフォルトの「定数」値に関数の引数を割り当てることができます。)
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。