diff --git a/library/rules_shipping_framework.php b/library/rules_shipping_framework.php index 7ec0ecf8b3fb2875417e4a21eab193fee0527d33..536fdace6a8344658696479c900bf9485609a9d9 100644 --- a/library/rules_shipping_framework.php +++ b/library/rules_shipping_framework.php @@ -908,7 +908,11 @@ class ShippingRule { $op = array_shift($expr); // ignore the "FUNCTION" $func = array_shift($expr); // The scoping function name $expression = array_shift($expr); // The expression to be evaluated - $conditions = $expr; // the remaining $expr list now contains the conditions + // the remaining $expr list now contains the conditions. Evaluate them one by one: + $conditions = array(); + foreach ($expr as $e) { + $conditions[] = $this->evaluateTerm($e, $vals, $products, $cartvals_callback); + } return $this->evaluateScoping ($expression, $func, $conditions, $vals, $products, $cartvals_callback); } elseif (is_array($expr)) { diff --git a/releases/opentools-woocommerce-advanced-shipping-by-rules_v1.1.zip b/releases/opentools-woocommerce-advanced-shipping-by-rules_v1.1.zip new file mode 100644 index 0000000000000000000000000000000000000000..bb5caa12ccf4f9ab3edf07da27b2a87a3334aa82 Binary files /dev/null and b/releases/opentools-woocommerce-advanced-shipping-by-rules_v1.1.zip differ diff --git a/releases/opentools-woocommerce-shipping-by-rules_v1.1.zip b/releases/opentools-woocommerce-shipping-by-rules_v1.1.zip new file mode 100644 index 0000000000000000000000000000000000000000..0b906f423d082006d5668bc9ebe8e0b375af70ec Binary files /dev/null and b/releases/opentools-woocommerce-shipping-by-rules_v1.1.zip differ