WooCommerce! Автоматическое добавление товара в корзину за каждую тысячу в корзине, как сделать?
WooCommerce! Автоматическое добавление товара в корзину за каждую тысячу в корзине, как сделать?
есть вот такой код, он добавляет 3 разных товара в корзину при заходе человека на сайт, но я хочу, что бы добавлялся ещё один другой товар, если человек заказ на 1 тысячу, 2 одинаковых товара если 2 тысячи и т. д.
add_action( 'template_redirect', 'add_product_to_cart' );
function add_product_to_cart() {
if ( ! is_admin() ) {
$articles = array(157,158,160);
$found = false;
// check if product already in cart
if ( sizeof( WC()->cart->get_cart() ) > 0 ) {
foreach ( WC()->cart->get_cart() as $cart_item_key => $values ) {
$_product = $values['data'];
if (($key = array_search($_product->id, $articles)) !== false)
unset($articles[$key]);
}
// if product not found, add it
if ( count($articles) > 0 ) {
foreach ($articles as $article) {
WC()->cart->add_to_cart($article);
}
}
} else {
// if no products in cart, add it
foreach ($articles as $article) {
WC()->cart->add_to_cart( $article );
}
}
}
}
Зачем Вы плодите одинаковые вопросы.
Вам же уже ответили в Вашем прошлом вопросе.
Просто сядьте и разберитесь в том что у Вас есть и в том, что Вам ответили. Прогоните по отладчику. Просмотрите переменные чем заполнены и какого типа.
add_action( 'template_redirect', 'add_product_to_cart' );
function add_product_to_cart() {
if ( ! is_admin() ) {
global $woocommerce;
$articles = array(772,774,776,778);
$found = false;
$cart_total = 1
if( $woocommerce->cart->total >= $cart_total ) {
// check if product already in cart
if ( sizeof( WC()->cart->get_cart() ) > 0 ) {
foreach ( WC()->cart->get_cart() as $cart_item_key => $values ) {
$_product = $values['data'];
if (($key = array_search($_product->id, $articles)) !== false)
unset($articles[$key]);
}
// if product not found, add it
if ( count($articles) > 0 ) {
foreach ($articles as $article) {
WC()->cart->add_to_cart($article);
}
}
} else {
// if no products in cart, add it
foreach ($articles as $article) {
WC()->cart->add_to_cart( $article );
}
}
}
}