Skip to content

Instantly share code, notes, and snippets.

@weartstudio
Last active December 21, 2020 12:04
Show Gist options
  • Save weartstudio/3e68f3641335e01e936291e6ab5e12fc to your computer and use it in GitHub Desktop.
Save weartstudio/3e68f3641335e01e936291e6ab5e12fc to your computer and use it in GitHub Desktop.
WooCommerce Warehouse Status
<?php
// paste into the 'functions.php'
// author: weart.hu
// New Statuses
function weart_filter_stock_status_options( $status ) {
// Add new statuses
$status['raktar_2_3'] = __( 'Raktáron, kiszállítás 2-3 munkanap', 'woocommerce' );
$status['raktar_4_5'] = __( 'Raktáron, kiszállítás 4-5 munkanap', 'woocommerce' );
$status['kulso_raktar_4_5'] = __( 'Külső raktáron, kiszállítás 4-5 munkanap', 'woocommerce' );
$status['kulso_raktar_5_7'] = __( 'Külső raktáron, kiszállítás 5-7 munkanap', 'woocommerce' );
$status['kulso_raktar_10_12'] = __( 'Külső raktáron, Kiszállítás 10-12 munkanap', 'woocommerce' );
$status['elorendelheto'] = __( 'Előrendelhető', 'woocommerce' );
$status['nem_rendelheto'] = __( 'Nem rendelhető', 'woocommerce' );
$status['beerkezes_alatt'] = __( 'Beérkezés alatt', 'woocommerce' );
return $status;
}
add_filter( 'woocommerce_product_stock_status_options', 'weart_filter_stock_status_options', 10, 1 );
// Texts
function weart_filter_get_availability_text( $availability, $product ) {
switch( $product->stock_status ) {
case 'raktar_2_3':
$availability = __( 'Raktáron, kiszállítás 2-3 munkanap', 'woocommerce' );
break;
case 'raktar_4_5':
$availability = __( 'Raktáron, kiszállítás 4-5 munkanap', 'woocommerce' );
break;
case 'kulso_raktar_4_5':
$availability = __( 'Külső raktáron, kiszállítás 4-5 munkanap', 'woocommerce' );
break;
case 'kulso_raktar_5_7':
$availability = __( 'Külső raktáron, kiszállítás 5-7 munkanap', 'woocommerce' );
break;
case 'kulso_raktar_10_12':
$availability = __( 'Külső raktáron, Kiszállítás 10-12 munkanap', 'woocommerce' );
break;
case 'elorendelheto':
$availability = __( 'Előrendelhető', 'woocommerce' );
break;
case 'nem_rendelheto':
$availability = __( 'Nem rendelhető', 'woocommerce' );
break;
case 'beerkezes_alatt':
$availability = __( 'Beérkezés alatt', 'woocommerce' );
break;
}
return $availability;
}
add_filter( 'woocommerce_get_availability_text', 'weart_filter_get_availability_text', 10, 2 );
// Class cleanup
function weart_filter_get_availability_class( $class, $product ) {
switch( $product->stock_status ) {
case 'raktar_2_3':
$class = 'raktar_2_3';
break;
case 'raktar_4_5':
$class = 'raktar_4_5';
break;
case 'kulso_raktar_4_5':
$class = 'kulso_raktar_4_5';
break;
case 'kulso_raktar_5_7':
$class = 'kulso_raktar_5_7';
break;
case 'kulso_raktar_10_12':
$class = 'kulso_raktar_10_12';
break;
case 'elorendelheto':
$class = 'elorendelheto';
break;
case 'nem_rendelheto':
$class = 'nem_rendelheto';
break;
case 'beerkezes_alatt':
$class = 'beerkezes_alatt';
break;
}
return $class;
}
add_filter( 'woocommerce_get_availability_class', 'weart_filter_get_availability_class', 10, 2 );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment