Остановить перенаправление после добавления WooCommerce в корзину

Я хочу полностью удалить любое перенаправление после того, как пользователь нажмет кнопку ADD TO CART.

На самом деле я не использую страницу продуктов.
Я использую простую кнопку со ссылкой на продукт, например: ?add-to-cart=492 .

Мой пользователь нажимает на несколько кнопок «добавить в корзину» на моей странице, поэтому он не может быть перенаправлен на любую страницу после нажатия первой кнопки.

В конце страницы он найдет кнопку CHECKOUT для оплаты, и все.

Любые идеи, как достичь этого?

благодаря

Обновить:

Ваши простые ссылки на кнопки html «add-to-cart» на самом деле, например, такие (значение href ) :

 <a href="http://my-domain.com/site2/?add-to-cart=492" target="_self" class="button white is-larger carrinho"> <span>ESCOLHER PACOTE</span> </a> 

Поэтому они перенаправляются каждый раз на вашу домашнюю страницу


2 РЕШЕНИЯ:

1) Используйте короткий код WooCommerce [add-to-cart] следующим образом: **

  • Без цены: [add_to_cart id="492" show_price="false"]
  • С ценой: [add_to_cart id="492"]

2) HTML-код в текстовом редакторе страницы. Чтобы предотвратить перенаправление, атрибут href должен быть:

 <a href="?add-to-cart=492" class="button white is-larger carrinho"> <span>ESCOLHER PACOTE</span> </a> 

На этот раз ваши клиенты не будут перенаправлены по-прежнему


КНОПКА ПРОВЕРКИ

Чтобы закончить, вот специальный код, который выводит кнопку «Приступить к проверке»:

 if( !function_exists('proceed_to_checkout_button') ) { function proceed_to_checkout_button() { $checkout_url = wc_get_checkout_url(); $button_txt = __('Proceed to checkout', 'woocommerce'); $output = '<div class="wc-proceed-to-checkout"> <a href="'. $checkout_url .'" class="checkout-button button alt wc-forward"> '. $button_txt .' </a> </div>'; return $output; } add_shortcode( 'checkout_button', 'proceed_to_checkout_button' ); } 

Код идет в файле function.php вашей активной дочерней темы (или темы), а также в любом файле плагина.

Использование: просто добавьте это в свой редактор: [checkout_button]


Оригинальный ответ:

Во-первых, в настройках WooCommerce вам необходимо:

  • Включить ** Ajax на кнопке «добавить в корзину» (Woocommerce)> «Настройки»> «Продукты»> «Показать»)
  • Отключите перенаправление кнопок «лишний» (Woocommerce> «Настройки»> «Продукты»> «Показать»)

Затем вы можете добавить пользовательскую кнопку «Приступить к оформлению», используя:

  • Любое классическое меню WordPress (Внешний вид> Меню)
  • С помощью этого настраиваемого кода на страницах отдельных продуктов и архивов продуктов:
 add_action('woocommerce_after_single_product', 'custom_checkout_button', 100); add_action('woocommerce_after_shop_loop', 'custom_checkout_button', 100); function custom_checkout_button() { $checkout_url = wc_get_checkout_url(); $button_txt = __('Proceed to checkout', 'woocommerce'); ?> <div class="wc-proceed-to-checkout"> <a href="<?php echo $checkout_url; ?>" class="checkout-button button alt wc-forward"> <?php echo $button_txt ?> </a> </div> <?php } 

Код идет в файле function.php вашей активной дочерней темы (или темы), а также в любом файле плагина.

В нижней части этих страниц будет отображаться кнопка «Перейти к оформлению».


Если вы хотите пропустить страницу с тележкой:

 add_action('template_redirect', 'skip_cart_page_redirecting_to_checkout'); function skip_cart_page_redirecting_to_checkout() { // If is cart page and cart is not empty if( is_cart() && ! WC()->cart->is_empty() ) wp_redirect( wc_get_checkout_url() ); } 

Код идет в файле function.php вашей активной дочерней темы (или темы), а также в любом файле плагина.

Весь код проверен и работает.