Код для вставки (переход на страницу оформления)
add_action(‘wp_enqueue_scripts’, function () { // Подключаем JavaScript с логикой wp_add_inline_script(‘jquery’, » jQuery(document).ready(function ($) { $(‘.buy’).on(‘click’, function () { const productId = 530; // ID товара, который нужно добавить $.post(‘» . admin_url(‘admin-ajax.php’) . «‘, { action: ‘add_to_cart_and_redirect’, product_id: productId }, function (response) { if (response.success) { window.location.href = response.data.redirect_url; } else { alert(response.data.message || ‘Ошибка добавления товара’); } }); }); }); «); }); add_action(‘wp_ajax_add_to_cart_and_redirect’, function () { $product_id = intval($_POST[‘product_id’] ?? 0); if ($product_id && WC()->cart->add_to_cart($product_id)) { wp_send_json_success([‘redirect_url’ => wc_get_checkout_url()]); } else { wp_send_json_error([‘message’ => ‘Не удалось добавить товар’]); } }); add_action(‘wp_ajax_nopriv_add_to_cart_and_redirect’, function () { $product_id = intval($_POST[‘product_id’] ?? 0); if ($product_id && WC()->cart->add_to_cart($product_id)) { wp_send_json_success([‘redirect_url’ => wc_get_checkout_url()]); } else { wp_send_json_error([‘message’ => ‘Не удалось добавить товар’]); } });
Код для перехода в корзину
add_action(‘wp_enqueue_scripts’, function () { // Подключаем JavaScript с логикой wp_add_inline_script(‘jquery’, » jQuery(document).ready(function ($) { $(‘.buy’).on(‘click’, function () { const productId = 530; // ID товара, который нужно добавить $.post(‘» . admin_url(‘admin-ajax.php’) . «‘, { action: ‘add_to_cart_and_redirect_to_cart’, product_id: productId }, function (response) { if (response.success) { window.location.href = response.data.redirect_url; } else { alert(response.data.message || ‘Ошибка добавления товара’); } }); }); }); «); }); add_action(‘wp_ajax_add_to_cart_and_redirect_to_cart’, function () { $product_id = intval($_POST[‘product_id’] ?? 0); if ($product_id && WC()->cart->add_to_cart($product_id)) { wp_send_json_success([‘redirect_url’ => wc_get_cart_url()]); } else { wp_send_json_error([‘message’ => ‘Не удалось добавить товар’]); } }); add_action(‘wp_ajax_nopriv_add_to_cart_and_redirect_to_cart’, function () { $product_id = intval($_POST[‘product_id’] ?? 0); if ($product_id && WC()->cart->add_to_cart($product_id)) { wp_send_json_success([‘redirect_url’ => wc_get_cart_url()]); } else { wp_send_json_error([‘message’ => ‘Не удалось добавить товар’]); } });