Купить в один клик WooCommerce, простое решение

Возвращаюсь к теме о том, как поставить в модуль woocommerce кнопку «купить в один клик». Сегодня я предлагаю максимально простое и удобное решение данной проблемы.
В этом решении мы будем использовать 2 плагина, easy fancybox и contact form 7. Установите плагины самостоятельно, в easy fancybox активируйте захват inline контента, для того, что-бы ссылка открывалась во всплывающем окне, а в contact form 7 настройте форму по своему усмотрению, в тело письма contact form 7 вы можете добавить тэги [_post_title] и [_post_url] для того, чтобы идентифицировать на какой товар была оформлена заявка.
Добавьте код в файл functions.php вашей темы:

//Купить в один клик
add_action( 'woocommerce_single_product_summary', 'return_policy', 30 );
function return_policy() { 
global $product;

	if ( !$product->is_in_stock() or !$product->get_price_html()) {
	}
	else{ ?>
	<p class="buy-one-click"><a class="fancybox-inline single_add_to_cart_button button alt" href="#contact_form_pop_question">Купить в один клик</a></p>
	<div class="fancybox-hidden" style="display: none;">
	<?php echo '<div id="contact_form_pop_question">'.do_shortcode('[ваш шорткод contact form 7]').'</div>'; ?>
	</div>
	<? }
}

Замените шорткод формы на свой.


Готово. Пишите вопросы если что-то не понятно.

7 комментариев

  1. Если закрыть лайтбокс и затем снова открыть, то вместо формы вылезает ошибка:

    The requested content cannot be loaded.
    Unexpected response.

    В чем может быть причина и как исправить?

    1. Т.е. первый раз открывается нормально, а последующие с ошибкой? Нужно смотреть, ссылку скиньте.

      1. Верно, в первый раз открывается, вторым разом уже ошибка. Лечится только перезагрузкой страницы. http://demo.kid-gps.ru/shop/

        1. Попробуйте активировать одну из стандартных тем и протестировать на ней, также попробуйте полностью переустановить плагин easy fancybox. Также возможно что плагин easy fancybox конфликтует не с темой, а с каким-то другим установленным у вас плагином.

  2. яд. Огромное спасибо за эту статью очень очень помогла. Все намного круче чем Buy one click WooCommerce. Единственный минус я не смогу поставить кнопку рядом с кнопкой добавить в корзину.

    1. Добавить в style.css:
      .buy-one-click, .single-product form.cart {
        display: inline-block;
      }
      .buy-one-click {
        margin: 0 5px;
      }

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *