Skip to content

Instantly share code, notes, and snippets.

@claudiosanches
Last active June 1, 2022 17:20
Show Gist options
  • Save claudiosanches/c250f1c660ccb81fc76b0968d50b514b to your computer and use it in GitHub Desktop.
Save claudiosanches/c250f1c660ccb81fc76b0968d50b514b to your computer and use it in GitHub Desktop.
WooCommerce - Hide the "In stock" message on product page.
<?php
/**
* Hide the "In stock" message on product page.
*
* @param string $html
* @param string $text
* @param WC_Product $product
* @return string
*/
function my_wc_hide_in_stock_message( $html, $text, $product ) {
$availability = $product->get_availability();
if ( isset( $availability['class'] ) && 'in-stock' === $availability['class'] ) {
return '';
}
return $html;
}
add_filter( 'woocommerce_stock_html', 'my_wc_hide_in_stock_message', 10, 3 );
@DayleySenior
Copy link

DayleySenior commented Dec 12, 2018

@skoldin
Does this also remove the "not in stock" as well as the "in stock"? And is there a "low stock" (Or something similar) in WooCommerce also?

@DayleySenior
Copy link

Nevermind. This should solve my problem:

add_filter( 'woocommerce_get_stock_html', '__return_empty_string', 10, 2 );

@Felipe-NS
Copy link

Here is hiding the in stock and also the low threhold stock message. Is there a way to hide just the in stock?

@drdogbot7
Copy link

There's always the CSS route:

.stock.in-stock {
  display:none;
}

Feels a little wrong, but no real downside that I can think of.

@kalwi7
Copy link

kalwi7 commented May 15, 2022

Don't know why, but doesn't work with new wersion of woocomerce. Maybe samoeone find it why?

@E-VANCE
Copy link

E-VANCE commented Jun 1, 2022

Don't know why, but doesn't work with new wersion of woocomerce. Maybe samoeone find it why?

add_filter( 'woocommerce_get_stock_html', '__return_empty_string', 10, 2 );

works fine with the latest WC, must be something else...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment