Login
Register

VirtueMart

WooCommerce

Others

Docs

Support

Blog

About

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!

×

Notice

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

TOPIC:

Configuration 19 May 2015 17:45 #1

  • tudesign
  • tudesign's Avatar Topic Author
Hello,

I need to create different rules for different categories and zip code;

I Try to explain:

I've 7 areas to send the goods and 22 different product categories; the cost of the shipping change in consideration of zip code and the category, in certain case the length is the other calculation factor.
I tried to organize the rules in this way:
  • Name=Trasporto e Montaggio BR TA LE 72012>=ZIP<=74123; MinLength>=291; 13 in Categories; Shipping=130
  • Name=Trasporto e Montaggio BA 70012>=ZIP<=70123; MaxLength>=291; 13 in Categories; Shipping=130
  • Name=Trasporto e Montaggio MATERA 75010>=ZIP<=75100; MaxLength>=291; 13 in Categories; Shipping=140
  • Name=Trasporto e Montaggio POTENZA 85010>=ZIP<=85100; MaxLength>=291; 13 in Categories; Shipping=190

Unfortunately when I publish this rules they don't appear.
How I can solve this problem?
Thanks for your help.
Marco
Attachments:

Configuration 23 May 2015 19:50 #2

Dear Tudesign,

I think you are missing a semicolon before the ZIP condition:
Name=Trasporto e Montaggio BR TA LE; 72012>=ZIP<=74123; MinLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio BA; 70012>=ZIP<=70123; MaxLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio MATERA; 75010>=ZIP<=75100; MaxLength>=291; 13 in Categories; Shipping=140
Name=Trasporto e Montaggio POTENZA; 85010>=ZIP<=85100; MaxLength>=291; 13 in Categories; Shipping=190

Does this solve your issue?

Best regards,Reinhold

Best regards,
Reinhold

Configuration 25 May 2015 09:26 #3

  • tudesign
  • tudesign's Avatar Topic Author
Hi Reinhold;

I added the semicolon; now the rules change but when I choose for example the zip code 70123 in the chart appear the shipping for the next zone 72012; is it an error of the Operators?
Thanks for your help

Name=Trasporto e Montaggio BARI; 70012=>ZIP=<70123; MaxLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio BRINDISI; 72012=>ZIP=<72100; MinLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio LECCE; 73012=>ZIP=<73100; MinLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio TARANTO; 74012=>ZIP=<74123; MinLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio MATERA; 75010=>ZIP=<75100; MaxLength>=291; 13 in Categories; Shipping=140
Name=Trasporto e Montaggio POTENZA; 85010=>ZIP=<85100; MaxLength>=291; 13 in Categories; Shipping=190

Configuration 25 May 2015 10:24 #4

  • tudesign
  • tudesign's Avatar Topic Author
Hi Reinhold,

I've another question; when there are two products with different characteristics is it possible to add the total price of the individual products?

Product 1 shipping cost 5
Product 2 Shipping cost 3
Total Shipping: 8

Now when add products of different categories appear the price of the last product added; alternatively is it possible to bring up the highest price?
Thanks for your help

Configuration 27 May 2015 22:47 #5

Dera Tudesign,
Sorry, but I missed another small issue with your rules:
You are using a condition like:
70012=>ZIP=<70123
Please note that this means "If ZIP is smaller or equal to 70012" AND "ZIP is smaller or equal to 70123". In particular, the > operator means "Check if the left side is LARGER than the right side". I usually remember this by the distance between the two lines of the > sign. On the left side the distance is larger, on the right end of the sign it is smaller.

So, the correct rules would be:
Name=Trasporto e Montaggio BARI; 70012=<ZIP=<70123; MaxLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio BRINDISI; 72012=<ZIP=<72100; MinLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio LECCE; 73012=<ZIP=<73100; MinLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio TARANTO; 74012=<ZIP=<74123; MinLength>=291; 13 in Categories; Shipping=130
Name=Trasporto e Montaggio MATERA; 75010=<ZIP=<75100; MaxLength>=291; 13 in Categories; Shipping=140
Name=Trasporto e Montaggio POTENZA; 85010=<ZIP=<85100; MaxLength>=291; 13 in Categories; Shipping=190

Configuration 28 May 2015 00:44 #6

Dear Tudesign,

I've another question; when there are two products with different characteristics is it possible to add the total price of the individual products?

Product 1 shipping cost 5
Product 2 Shipping cost 3
Total Shipping: 8

Now when add products of different categories appear the price of the last product added; alternatively is it possible to bring up the highest price?


The plugin is not really designed to calculate shipping costs on a per-product basis. The rules rather operate on the characteristics of the whole cart. There are some clumsy ways to calculate the shipping costs on a per-product basis (there are some postings in this form about per-category and per-product shipping costs, that might give you a hint how to implement his).

Best regards,
Reinhold

Configuration 11 Jun 2015 10:25 #7

  • tudesign
  • tudesign's Avatar Topic Author
Hi Reinhold,

sorry but I can't find this post that you say, could you indicate me the link? I need to solve this issue!

Regrards

Configuration 12 Jun 2015 18:53 #8

Configuration 15 Jun 2015 10:47 #9

  • tudesign
  • tudesign's Avatar Topic Author
Hi Reinhold,
in you post you suggest a code like this

Variable=ShipTemp; Value=0
Comment=Manufacurer5; Variable=ShipTemp; Value=ShipTemp+0*evaluate_for_manufacturers(Articles, 5)
Comment=Category4; Variable=ShipTemp; Value=ShipTemp + evaluate_for_categories(MaxHeight, 4) * evaluate_for_categories(MaxWeight, 4) * evaluate_for_categories(MaxLength, 4)*7
Comment=Category5; Variable=ShipTemp; Condition=evaluate_for_categories(Articles, 6) == 1; Value=ShipTemp+5
Comment=Category5; Variable=ShipTemp; Condition=evaluate_for_categories(Articles, 6) == 2; Value=ShipTemp+8
...
Shipping=ShipTemp

I've 20 categories and 4 macroareas to send the goods can you suggest me how I can write a rules that add the costs of single goods if in the cart there are 2 oro more?

This is an example of my rules:
Name=Trasporto e Montaggio BA-BR-LE-TA; 70010=<ZIP=<70123 OR 72012=<ZIP=<72100 OR 73012=<ZIP=<73100 OR 74012=<ZIP=<74123; MinLength>=291; 30 in Categories; Shipping=130
Name=Trasporto; 00000=<ZIP=<70006 OR 71010=<ZIP=<71122 OR 76011=<ZIP=<76125 OR 85101=<ZIP=<98168; MinLength>=291; 30 in Categories; Shipping=270
Name=Trasporto e Montaggio MATERA; 75010<=ZIP<=75100; MinLength>=291; 30 in Categories; Shipping=140
Name=Trasporto e Montaggio POTENZA; 85010<=ZIP<=85100; MinLength>=291; 30 in Categories; Shipping=190
Name=Trasporto e Montaggio BA-BR-LE-TA; 70010<=ZIP<=70123 OR 72012<=ZIP<=72100 OR 73012<=ZIP<=73100 OR 74012<=ZIP<=74123; MaxLength<=290;MinLength>=241; 30 in Categories; Shipping=100
Name=Trasporto; 00000<=ZIP<=70006 OR 71010<=ZIP<=71122 OR 76011<=ZIP<=76125 OR 85101<=ZIP<=98168; MaxLength<=290;MinLength>=241; 30 in Categories; Shipping=150
Name=Trasporto e Montaggio MATERA; 75010<=ZIP<=75100; MaxLength<=290;MinLength>=241; 30 in Categories; Shipping=140
Name=Trasporto e Montaggio POTENZA; 85010<=ZIP<=85100; MaxLength<=290;MinLength>=241; 30 in Categories; Shipping=190
Name=Trasporto e Montaggio BA-BR-LE-TA; 70010<=ZIP<=70123 OR 72012<=ZIP<=72100 OR 73012<=ZIP<=73100 OR 74012<=ZIP<=74123; MaxLength<=240; 30 in Categories; Shipping=80
Name=Trasporto; 00000=>ZIP<=70006 OR 71010=<ZIP=<71122 OR 76011=<ZIP=<76125 OR 85101=<ZIP=<98168; MaxLength<=240; 30 in Categories; Shipping=100
Name=Trasporto e Montaggio MATERA; 75010<=ZIP<=75100; MaxLength<=240; 30 in Categories; Shipping=140
Name=Trasporto e Montaggio POTENZA; 85010<=ZIP<=85100; MaxLength<=240; 30 in Categories; Shipping=190

Thanks for your help

Configuration 19 Jun 2015 00:46 #10

Dear Tudesign,
As I said, there are CLUMSY ways, and by that I meant rather ugly and very intricate, in particular if you have multiple conditions.

As a starting point, here is how I would start:
Variable=ShipTemp; Value=0
Variable=ShipTemp; 70010=<ZIP=<70123; MinLength>=291; Value=ShipTemp+evaluate_for_skus(Articles, "sku-1")*123
Variable=ShipTemp; 70010=<ZIP=<70123; MinLength<291; Value=ShipTemp+evaluate_for_skus(Articles, "sku-1")*100
Variable=ShipTemp; 70010=<ZIP=<70123; MinLength>=291; Value=ShipTemp+evaluate_for_skus(Articles, "sku-2")*144
Variable=ShipTemp; 70010=<ZIP=<70123; MinLength<291; Value=ShipTemp+evaluate_for_skus(Articles, "sku-2")*180
...
Shipping=ShipTemp

The numbers at the end of each rule is the per-product price. The first two are for article with sku "SKU-1", depending on MinLength and ZIP, the second are for SKU-2 depending on MinLength and ZIP. As you can image, you have to add one rule for each combination of ZIP- and length and SKU combinations...

If you have the same shipping costs for all products in a category, you can use "evaluate_for_categories(Articles, 30)" instead of evaluate_for_skus...

Best regards,
Reinhold
  • Page:
  • 1