Возвращаюсь к теме о том, как поставить в модуль 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>
<? }
}
Замените шорткод формы на свой.
Готово. Пишите вопросы если что-то не понятно.
Если закрыть лайтбокс и затем снова открыть, то вместо формы вылезает ошибка:
The requested content cannot be loaded.
Unexpected response.
В чем может быть причина и как исправить?
Т.е. первый раз открывается нормально, а последующие с ошибкой? Нужно смотреть, ссылку скиньте.
Верно, в первый раз открывается, вторым разом уже ошибка. Лечится только перезагрузкой страницы. http://demo.kid-gps.ru/shop/
Попробуйте активировать одну из стандартных тем и протестировать на ней, также попробуйте полностью переустановить плагин easy fancybox. Также возможно что плагин easy fancybox конфликтует не с темой, а с каким-то другим установленным у вас плагином.
Бесконечно признателен за новость, Спасибо прибольшое
яд. Огромное спасибо за эту статью очень очень помогла. Все намного круче чем Buy one click WooCommerce. Единственный минус я не смогу поставить кнопку рядом с кнопкой добавить в корзину.
Добавить в style.css:
.buy-one-click, .single-product form.cart {
display: inline-block;
}
.buy-one-click {
margin: 0 5px;
}