Я пытаюсь добавить вес доставки товара по умолчанию в WooCommerce в своем файле functions.php, но не работает, я не уверен, что использую правильные фрагменты или недостающие части фрагмента.
Вот что я использую,
add_filter('woocommerce_product_get_weight', 'woocommerce_product_get_weight_filter');
function woocommerce_product_get_weight_filter($weight) {
$default_weight = 0.1;
if ((!is_numeric($weight)) || ($weight <= 0.001)) {
return $default_weight;
}
return $weight;
}
Попробуй с empty()
и крючок для вариантов продукта:
add_filter('woocommerce_product_variation_get_weight', 'woocommerce_product_get_weight_filter', 10, 2 );
add_filter('woocommerce_product_get_weight', 'woocommerce_product_get_weight_filter', 10, 2 );
function woocommerce_product_get_weight_filter( $weight, $product ) {
if ( empty($weight) || $weight <= 0.001 ) {
return 0.1;
}
return $weight;
}
Код помещается в файл function.php вашей активной дочерней темы (или активной темы). Проверено и работает.
Это не будет работать на страницах редактирования продукта администратора в поле настройки веса. Единственные доступные крючки работаем для «просмотра» контекста а также не в контексте редактирования (как в бэкэнде)…
Других решений пока нет …