Login
Register

VirtueMart

WooCommerce

Others

Docs

Support

Blog

About

Shipping By Rules for WooCommerce

IMPORTANT ANNOUNCEMENT: Plugin development ceased, all plugins made available freely (GPL)

With great sadness we have to announce that we are ceasing development of all our VirtueMart, WooCommerce and Joomla plugins. Effective immediately, all our plugins -- even those that were paid downloads -- are made available for free from our homepage (GPL license still applies), but we cannot and will not provide any support anymore.

It has been a great pleasure to be part of the thriving development communities of VirtueMart as well as WooCommerce. However, during the last year it became painstakingly clear that in addition to a full-time job, a young family and several other time-consuming hobbies at professional level (like being a professional singer) the plugin development and the support that it requires is not sustainable and is taking its toll. It has been an honor, but it is now time to say good bye!

×

Notice

The forum is in read only mode.
Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1

TOPIC:

Tried so hard to filter by coupon or categories 05 Jun 2017 13:42 #1

  • seanzxc
  • seanzxc's Avatar Topic Author
List function 'contains_any' requires the first argument to be lists. (Full rule: 'Name=Posten Original Box 12st 6-12kg box fee + logistic cost;Condition=contains_any(Coupons,"allsemp"); Weight>=6; Shipping=280')

above is always the warning for the incorrect results.
i tried contains_any(Categories,"") and write slug name into it, it does not filter at all and run as that line is ignored.
So i tried Coupons instead but it always tell the first arguments should be lists no matter the coupon code is in the cart or not.

what has happened?
So urgent to get help from you
Best regards!

Tried so hard to filter by coupon or categories 05 Jun 2017 14:22 #2

Dear SeanZXC,
1. Are you using the advanced version of the plugin? The basic version does NOT provide the coupon codes in the Coupon variable. This would explain your error message.

2. Regarding your contains_any problem: You might try prepending "Condition=" to the contains_any call. If you use a slug like Condition=contains_any(Categories, "your-slug"), then that line should only match when a product from that category is in the cart. If not, that line is ignored and the next line is considered.

Best regards,
Reinhold

Tried so hard to filter by coupon or categories 05 Jun 2017 15:09 #3

  • seanzxc
  • seanzxc's Avatar Topic Author
yes, i am using the advanced version for sure. This account is the one purchased the advanced version.

Tried so hard to filter by coupon or categories 05 Jun 2017 15:10 #4

  • seanzxc
  • seanzxc's Avatar Topic Author
the attachment pic shows the advanced plugin screenshot in woocommerce
Attachments:

Tried so hard to filter by coupon or categories 05 Jun 2017 15:14 #5

  • seanzxc
  • seanzxc's Avatar Topic Author
update credential is activated, the order number is WC-16-1030 and the password is what i suppose to write

Tried so hard to filter by coupon or categories 05 Jun 2017 16:09 #6

Dear SeanZXC,
Thank you for the screenshot of the plugin area. It seems you are still using plugin version 1.2.1, which is known to have a bug with the coupons. The bugfix release 1.2.2 fixed this (see also our changelog: open-tools.net/documentation/advanced-sh...merce.html#changelog).

If you don't want to update to the latest version, you can manually apply the fix to your installed version of the plugin: The diff is
diff --git a/includes/rules_shipping_framework_woocommerce_advanced.php b/includes/rules_shipping_framework_woocommerce_advanced.php
index 0ec927d..77c89f3 100644
--- a/includes/rules_shipping_framework_woocommerce_advanced.php
+++ b/includes/rules_shipping_framework_woocommerce_advanced.php
@@ -42,10 +42,8 @@ class RulesShippingFrameworkWooCommerceAdvanced extends RulesShippingFrameworkWo
        }
        
        protected function addCustomCartValues ($cart, $products, $method, &$values) {
-               $data = array(
-                       'coupons'    => $cart['applied_coupons'],
-               );
-               return $data;
+               $values['coupons'] = $cart['applied_coupons'];
+               return $values;
        }
        
 

If you are not familiar with reading and applying a diff / patch like this, simply open the file includes/rules_shipping_framework_woocommerce_advanced.php, search for the function addCustomValues and replace these lines:
        protected function addCustomCartValues ($cart, $products, $method, &$values) {
               $data = array(
                       'coupons'    => $cart['applied_coupons'],
               );
               return $data;
        }
with this corrected version:
        protected function addCustomCartValues ($cart, $products, $method, &$values) {
               $values['coupons'] = $cart['applied_coupons'];
               return $values;
        }

Best regards,
Reinhold

Tried so hard to filter by coupon or categories 05 Jun 2017 16:38 #7

  • seanzxc
  • seanzxc's Avatar Topic Author
Fantastic, it works pretty well!
Thank you a lot for your updating services. Really appreciate your plugins.

[SOLVED] Tried so hard to filter by coupon or categories 05 Jun 2017 16:38 #8

  • seanzxc
  • seanzxc's Avatar Topic Author
Problem solved.
  • Page:
  • 1