View Categories

UPS – additional filters

Filter to input constant dimensions for all the products

<?php

add_filter( 'woocommerce_product_get_length', 'oct_default_product_dimension', 10, 2 );
add_filter( 'woocommerce_product_get_width', 'oct_default_product_dimension', 10, 2 );
add_filter( 'woocommerce_product_get_height', 'oct_default_product_dimension', 10, 2 );

add_filter( 'woocommerce_product_variation_get_length', 'oct_default_product_dimension', 10, 2 );
add_filter( 'woocommerce_product_variation_get_width', 'oct_default_product_dimension', 10, 2 );
add_filter( 'woocommerce_product_variation_get_height', 'oct_default_product_dimension', 10, 2 );

function oct_default_product_dimension( $value, $product ) {
if ( $value !== '' && $value !== null && (float) $value > 0 ) {
return $value;
}

$default_dimensions = array(
'length' => '10',
'width' => '10',
'height' => '10',
);

$current_filter = current_filter();

if ( str_contains( $current_filter, '_get_length' ) ) {
return $default_dimensions['length'];
}

if ( str_contains( $current_filter, '_get_width' ) ) {
return $default_dimensions['width'];
}

if ( str_contains( $current_filter, '_get_height' ) ) {
return $default_dimensions['height'];
}

return $value;
}
Scroll to Top