Установить минимальный вес по умолчанию для продуктов в Woocommerce 3 - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь добавить вес доставки товара по умолчанию в 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;
}

1 Ответ

0 голосов
/ 20 сентября 2018

Попробуйте с 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 вашей активной дочерней темы (или активной темы).Протестировано и работает.

Это не будет работать на страницах редактирования продукта администратора в поле настройки веса.Единственные доступные хуки работают для контекста «просмотра» и , а не в контексте «редактирования» (как в бэкэнде)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...