Cómo cambiar la etiqueta «Sin inventario» o «Out of stock» por «Vendido» en WooCommerce

En WooCommerce, los productos que no tienen stock muestran por defecto la etiqueta «Sin inventario» o «Out of stock». En algunos casos, queremos personalizar este mensaje para que muestre una palabra más acorde, como «Vendido».

Para lograr esto, utilizaremos el filtro woocommerce_get_availability, que permite modificar el texto que muestra WooCommerce cuando un producto está sin stock.

En el siguiente ejemplo encontrarás una función sencilla que reemplaza el mensaje predeterminado por «Vendido». Solo tienes que añadir este código en el archivo functions.php de tu tema hijo o en un plugin personalizado para que los cambios se mantengan tras actualizaciones.

// Cambiar texto "Out of stock" o "Sin inventario" por "Vendido" en WooCommerce
add_filter( 'woocommerce_get_availability', 'wpv_custom_availability_text', 10, 2 );
function wpv_custom_availability_text( $availability, $product ) {
    if ( ! $product->is_in_stock() ) {
        $availability['availability'] = __('Vendido', 'woocommerce');
    }
    return $availability;
}