add_filter( 'woocommerce_available_payment_gateways', function( $available_gateways ) {
// Skip Admin Area
if( is_admin() ) {
return $available_gateways;
}
// Loop Cart Items
foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
// Detect Fractional Quantity
if( strpos( $cart_item['quantity'], '.' ) ) {
// Found One, Remove PayPal And Stop Checking
unset( $available_gateways['paypal'] );
break;
}
}
// Default
return $available_gateways;
} );
Eliminate a payment gateway on cart conditions
Eliminates a payment gateway when cart contains an item with a fractional quantity. Useful for gateways that can’t handle fractional quantities like PayPal.
How to use
PHP Code Snippets
- Log into a staging, development, or locally hosted clone of your site
- Install and activate Code Snippets
- WP Admin > Snippets > Add New
- Copy and paste the code from the Description tab above
- Check to ensure formatting came over properly and no syntax errors show up in the editor
- Customize the code as desired
- Add a meaningful title
- Select whether to run on front-end or back-end (or both)
- Click “Save and Activate”
- Test your site to ensure it works
- Disable if any problems, or recover
- Repeat for live environment
License
All code snippets are licensed GPLv2 (or later) matching WordPress licensing.
Disclaimer of warranty:
Except when otherwise stated in writing the copyright holders and/or other parties provide the program as-is without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose.
Support
- Describe the issue and what you’ve observed.
- Describe your expected outcome(s).
- List steps to reproduce the issue.
- Optionally provide screen-shot or video URLs.
