Last active
February 29, 2020 20:39
-
-
Save manospsyx/0fb96a6777f6e947995c to your computer and use it in GitHub Desktop.
Use this snippet to hide "Free!" price strings from drop-downs and selected product details when the "Per-Item Pricing" option is checked.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Plugin Name: WooCommerce Composite Products - Hide "Free!" Price Strings | |
* Plugin URI: https://woocommerce.com/products/composite-products/ | |
* Description: Hide "Free!" price strings from drop-downs and selected product details when the "Per-Item Pricing" option is checked. | |
* Version: 1.0 | |
* Author: SomewhereWarm | |
* Author URI: https://somewherewarm.gr/ | |
* Developer: Manos Psychogyiopoulos | |
* | |
* Requires at least: 3.8 | |
* Tested up to: 5.3 | |
* | |
* Copyright: © 2017-2020 SomewhereWarm SMPC ([email protected]). | |
* License: GNU General Public License v3.0 | |
* License URI: http://www.gnu.org/licenses/gpl-3.0.html | |
*/ | |
// To use this snippet, download this file into your plugins directory and activate it, or copy the code under this line into the functions.php file of your (child) theme. | |
add_filter( 'woocommerce_free_price_html', 'wc_cp_composited_product_free_price_html', 10, 2 ); | |
function wc_cp_composited_product_free_price_html( $price, $product ) { | |
if ( did_action( 'woocommerce_composite_products_apply_product_filters' ) > did_action( 'woocommerce_composite_products_remove_product_filters' ) ) { | |
$price = ''; // wc_price( 0.0 ); | |
} | |
return $price; | |
} | |
add_filter( 'woocommerce_composited_product_price_string_inner', 'wc_cp_composited_product_free_price_string_inner', 10, 10 ); | |
function wc_cp_composited_product_free_price_string_inner( $price_string_inner, $price_string, $qty_suffix, $suffix, $price, $is_range, $has_multiple, $product_id, $component_id, $composited_product ) { | |
if ( $price == 0 ) { | |
$price_string_inner = ''; // sprintf( __( '%1$s %2$s %3$s', 'dropdown price followed by per unit suffix and discount suffix', 'woocommerce-composite-products' ), WC_CP()->api->get_composited_item_price_string_price( $price ), $qty_suffix, $suffix ); | |
} | |
return $price_string_inner; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment