PluginProbe ʕ •ᴥ•ʔ
ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution / 1.0.0
ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution v1.0.0
4.9.1 4.9.0 2.0.0 2.1.0 2.2.0 2.2.1 2.2.2 2.3.0 2.4.0 2.5.0 2.5.1 3.0.0 3.1.0 3.1.1 4.0.0 4.0.1 4.1.0 4.1.1 4.2.0 4.2.1 4.3.0 4.3.1 4.4.0 4.5.0 4.5.1 4.6.0 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.6.7 4.6.8 4.6.9 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.8.1 4.8.2 4.8.3 4.8.4 4.8.5 4.8.6 4.8.7 4.8.8 4.8.9 trunk 0.1.2-beta 0.1.3-beta 0.1.4-beta 1.0.0 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.2.1 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.5.0 1.5.1 1.6.0 1.6.1 1.7.0 1.8.0 1.8.1 1.9.0
shopengine / modules / quick-checkout / quick-checkout.php
shopengine / modules / quick-checkout Last commit date
assets 5 years ago quick-checkout.1.php 5 years ago quick-checkout.php 5 years ago
quick-checkout.php
54 lines
1 <?php
2
3 namespace ShopEngine\Modules\Quick_Checkout;
4
5 use ShopEngine\Traits\Singleton;
6
7 /**
8 * Class Quick_Checkout
9 *
10 * Main Module Class
11 *
12 * @since 1.0.0
13 */
14 class Quick_Checkout {
15 use Singleton;
16
17 public function init() {
18 add_action('woocommerce_before_add_to_cart_button', [$this, 'print_button'], 1, 3);
19 // add_filter('woocommerce_loop_add_to_cart_link', [$this, 'print_button'], 1, 3);
20
21 if(isset($_GET['shopengine_quick_checkout']) && $_GET['shopengine_quick_checkout'] == 'modal-content'){
22 add_filter( 'woocommerce_add_to_cart_validation', [$this, 'remove_cart_item_before_add_to_cart'], 20, 3 );
23 add_filter( 'wc_add_to_cart_message_html', [$this, 'remove_added_to_cart_message'] );
24 }
25
26 add_action('wp_enqueue_scripts', function () {
27 wp_enqueue_script( 'lib-sqv-js', \ShopEngine::module_url() . 'quick-view/assets/lib/sqv/smart-quick-view.js', ['jquery','wc-single-product']);
28 wp_enqueue_script( 'shopengine-quick-checkout', \ShopEngine::module_url() . 'quick-checkout/assets/js/script.js', ['lib-sqv-js'] );
29 });
30 }
31
32 public function print_button($add_to_cart_html = null, $product = null, $args = null) {
33 $html = '<input type="hidden" name="shopengine_quick_checkout" value="modal-content" /><button data-source-url="'.wc_get_checkout_url().'" class="shopengine-quick-checkout-button" type="submit">Buy Now</button>';
34
35 if($add_to_cart_html != null){
36 return $html . $add_to_cart_html;
37 }
38
39 echo $html;
40 }
41
42 function remove_added_to_cart_message() {
43 return '';
44 }
45
46 public function remove_cart_item_before_add_to_cart( $passed, $product_id, $quantity ) {
47 if( ! WC()->cart->is_empty()){
48 WC()->cart->empty_cart();
49 }
50
51 return $passed;
52 }
53 }
54