Я хочу добавить два продукта в корзину, но хочу активировать функцию для второго продукта только тогда, когда пользователь нажал «Добавить в корзину» и текущий продукт был добавлен в корзину.
- Пользователь нажал «Добавить в корзину» на одном продукте
- Когда для действия пользователя будет выполнено «Добавить в корзину», добавьте один из продуктов из
$_POST[]
данных.
IЯ использую следующий код, но он связывается с другим кодом, использующим этот хук: woocommerce_add_to_cart
add_filter( 'woocommerce_add_to_cart_handler', 'sec_product_cart', 100, 2 );
function sec_product_cart($adding_to_cart_get_type, $adding_to_cart) {
// Grab all the optional items
$exp = '/^optional_item_(\d*)$/';
$values = Array();
foreach( $_POST as $key => $val )
{
$match = Array();
//If this is one of the item name variables
if( preg_match( $exp, $key, $match ) )
{
if($_POST[$key] > 0){
$cart_item_id = str_replace("optional_item_","", $key);
// Add item and the quanity to the cart
WC()->cart->add_to_cart( $cart_item_id, $_POST[$key] );
// $values[] = Array($cart_item_id, $_POST[$key]);
}
}
}
}