wc_trigger_stock_change_actions()WC 1.0

Check if a product's stock quantity has reached certain thresholds and trigger appropriate actions.

This functionality was moved out of wc_trigger_stock_change_notifications in order to decouple it from orders, since stock quantity can also be updated in other ways.

Return

null. Nothing (null).

Usage

wc_trigger_stock_change_actions( $product );
$product(WC_Product) (required)
The product whose stock level has changed.

wc_trigger_stock_change_actions() code WC 9.6.1

function wc_trigger_stock_change_actions( $product ) {
	if ( true !== $product->get_manage_stock() ) {
		return;
	}

	$no_stock_amount  = absint( get_option( 'woocommerce_notify_no_stock_amount', 0 ) );
	$low_stock_amount = absint( wc_get_low_stock_amount( $product ) );
	$stock_quantity   = $product->get_stock_quantity();

	if ( $stock_quantity <= $no_stock_amount ) {
		/**
		 * Action fires when a product's stock quantity reaches the "no stock" threshold.
		 *
		 * @since 3.0
		 *
		 * @param WC_Product $product The product whose stock quantity has changed.
		 */
		do_action( 'woocommerce_no_stock', $product );
	} elseif ( $stock_quantity <= $low_stock_amount ) {
		/**
		 * Action fires when a product's stock quantity reaches the "low stock" threshold.
		 *
		 * @since 3.0
		 *
		 * @param WC_Product $product The product whose stock quantity has changed.
		 */
		do_action( 'woocommerce_low_stock', $product );
	}
}