Shipping by Rules for VirtueMart

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!



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


Shippment per state 20 Oct 2014 13:36 #1

  • vdimeris
  • vdimeris's Avatar Topic Author
Hi Reinhold

I need your help on below: I'm using state of my Country as per below but always return the first value of shipping cost "2"

Name=; Amount=>75; Shipping=0
Name=; state1 in list("ΑΤ"); Weight<1; Shipping=2
Name=; state1 in list("ΑΤ"); 1<=Weight<2; Shipping=2.3
Name=; state1 in list("ΑΤ"); 2<=Weight; Shipping=0.6*max(Ceil(Weight),1)+2.3
Name=; state2 in list("ΔΩ", "ΖΑ", "ΗΡ", "ΚΕ", "ΚΦ", "ΚΥ", "ΛΑ", "ΛΣ", "ΛΕ", "ΡΕ", "ΣΑ", "ΧΝ", "ΧΙ"); Weight<1; Shipping=2.30
Name=; state2 in list("ΔΩ", "ΖΑ", "ΗΡ", "ΚΕ", "ΚΦ", "ΚΥ", "ΛΑ", "ΛΣ", "ΛΕ", "ΡΕ", "ΣΑ", "ΧΝ", "ΧΙ"); 1<=Weight<2; Shipping=3.5
Name=; state2 in list("ΔΩ", "ΖΑ", "ΗΡ", "ΚΕ", "ΚΦ", "ΚΥ", "ΛΑ", "ΛΣ", "ΛΕ", "ΡΕ", "ΣΑ", "ΧΝ", "ΧΙ"); 2<=Weight; Shipping=1*max(Ceil(Weight),1)+3.5
Name=; state2 in list("ΔΩ", "ΖΑ", "ΗΡ", "ΚΕ", "ΚΦ", "ΚΥ", "ΛΑ", "ΛΣ", "ΛΕ", "ΡΕ", "ΣΑ", "ΧΝ", "ΧΙ"); Weight<1; Shipping=2.3
Name=; state2 in list("ΔΩ", "ΖΑ", "ΗΡ", "ΚΕ", "ΚΦ", "ΚΥ", "ΛΑ", "ΛΣ", "ΛΕ", "ΡΕ", "ΣΑ", "ΧΝ", "ΧΙ"); 1<=Weight<2; Shipping=3.5
Name=; state2 in list("ΔΩ", "ΖΑ", "ΗΡ", "ΚΕ", "ΚΦ", "ΚΥ", "ΛΑ", "ΛΣ", "ΛΕ", "ΡΕ", "ΣΑ", "ΧΝ", "ΧΙ"); 2<=Weight; Shipping=1*max(Ceil(Weight),1)+3.5

Many Thanks in advance
Regards / Vagelis

Shippment per state 21 Oct 2014 13:24 #2

Dear Vagelis,
First, the second to fourth rules should use state2 rather than state1. There is no variable "state1", so you should have got a proper error message on checkout ("Evaluation yields unknown value while evaluating rule part 'state1'."). Since the plugin could not evaluate that condition, it printed the error message and behaved as if that conditions wasn't there. So each state basically got the shipping costs for Attica.
If you don't see that error message, then your template has a serious problem. Some templates do not show the <div> where error messages (Joomla and VM errors) are printed, which is simply a bug. For example, if a user uses a wrong password to log in, there will be NO message about the failed login, but he will not be logged in.

Second, if you don't want to give a name to a rule, you don't need to add a Name=... rule part. Simply start with the conditions.

Best regards,

Shippment per state 23 Oct 2014 09:59 #3

  • vdimeris
  • vdimeris's Avatar Topic Author
Hi Reinhold

You are fully right !!! It looks that I'm blind (I didn't see it that I have state1 and 2....
The funny thing is that id didn't receive any error message regarding the state, (but in order to check it I have totally remove the state and the error message appears)

Regarding the name I keep it in order to find easy where the conditions starts

Million Thanks
Regards/ Vagelis

[SOLVED] Shippment per state 27 Oct 2014 23:11 #4

Problem solved.
  • Page:
  • 1