150
Mặc định, woo chỉ có các trạng thái còn hàng, chờ hàng, hết hàng. Nay muốn thêm các trang thái khác như backorder, ngừng kinh doanh, các bạn làm như sau.

Chép toàn bộ code dưới đây vào function.php của theme. Css lại cho đẹp nếu cần.
// Add new stock status options
function filter_woocommerce_product_stock_status_options($status)
{
// Add new statuses
$status['sob_product'] = __('Ngừng kinh doanh', 'woocommerce');
$status['contact_us'] = __('Liên hệ', 'woocommerce');
return $status;
}
add_filter('woocommerce_product_stock_status_options', 'filter_woocommerce_product_stock_status_options', 10, 1);
// Availability text
function filter_woocommerce_get_availability_text($availability, $product)
{
// Get stock status
switch ($product->get_stock_status()) {
case 'sob_product':
$availability = __('Ngừng kinh doanh', 'woocommerce');
break;
case 'contact_us':
$availability = __('Liên hệ', 'woocommerce');
break;
}
return $availability;
}
add_filter('woocommerce_get_availability_text', 'filter_woocommerce_get_availability_text', 10, 2);
// Availability CSS class
function filter_woocommerce_get_availability_class($class, $product)
{
// Get stock status
switch ($product->get_stock_status()) {
case 'sob_product':
$class = 'sob-product';
break;
case 'contact_us':
$class = 'contact-us';
break;
}
return $class;
}
add_filter('woocommerce_get_availability_class', 'filter_woocommerce_get_availability_class', 10, 2);
// An example based on global $product
// Get the global product object
global $product;
// Is a WC product
if (is_a($product, 'WC_Product')) {
// Get stock status
$product_stock_status = $product->get_stock_status();
// Compare
if ($product_stock_status == 'My custom stock status') {
// Etc..
}
}
Nguồn : WordPress VietCoders Community