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:

Shipping Rules doubt 15 Jan 2016 03:06 #1

  • Thibis
  • Thibis's Avatar Topic Author
Hi.

I'm from Brazil, sorry for my English.

I want to know if is possible to set free shipping when the client buy 35 usd from one category and then he recieves free shipping for all categories. F. e.: He buy 35 USD of stickers and then recieves free shipping for Stickers and keychains. If he buy only 35 USD of keychains he didn't recieve free shipping.

Regards

Shipping Rules doubt 16 Jan 2016 12:29 #2

Dear Thibis,
I'm afraid that it's not currently possible to have a condition "If ANY category has an order subtotal of more than 35 UDS". What is possible is to check individual, explicitly indicated categories. I.e. if you have a limited, fixed number of categories, you can check all of the categories (I'm assuming category IDs 123 to 126 in my example) individually:
Name="Free Shipping"; 35<=Max(evaluate_for_categories(Amount, 123), evaluate_for_categories(Amount, 124), evaluate_for_categories(Amount, 125), evaluate_for_categories(Amount, 126)); Shipping=0

As you can see, you need to check categories 123, 124, 125 and 126 explicitly. Of course, if you have lots of categories, this becomes quite lengthy, but AFAICS it is the only way to achieve what you want.

Best regards,
Reinhold

PS: The evaluate_for_categories function is only available in the paid version of the plugin, the free version does not have any functions or mathematical expressions implemented.

Shipping Rules doubt 16 Jan 2016 12:32 #3

Dear Thibis,
Upon reading your post again, I might have misread your request. Do you mean to handle the sticker category special, i.e. the customer only gets free shipping for the whole order if they order at least 35 USD from the stickers category (but not if they buy 35 USD from any other category)? In this case, the rule is simpler, because you need to check only that one, special category (assuming it has a category ID of 123):
Name="Free Shipping"; 35<=evaluate_for_categories(Amount, 123); Shipping=0
Again, this needs the paid version of the plugin.

Best regards,
Reinhold

Shipping Rules doubt 16 Jan 2016 12:40 #4

  • Thibis
  • Thibis's Avatar Topic Author
Yes, it is only when the client by 35 USD on stickers. If he buy 25 USD on stickers and 10 USD on keychains he didn't get free shipping. Or if he buy 35 USD on keychains or other product he didn't get free shipping. Sorry for the repetition! Haha

In my store, the stickers category has a lot of subcategories in it, is it a problem?

And how can I find the number of the category?

Thanks for your reply Reinhold!

Shipping Rules doubt 16 Jan 2016 17:18 #5

Dear Thibis,
The evaluate_for_categories function only evaluates the expression for all products that are directly assigned this category. So if your products are assigned to subcategories of stickers, but not to the stickers category, then you'll have to check each subcategory separately (or rather, you can list all subcategories directly in the evaluate_for_categories function).

I'm thinking of adding a new function evaluate_for_subcategories, which does exactly what you would need, but that is not implemented for the time being.

The Category ID is actually the SLUG, so the rule should rater be:
Name="Free Shipping"; 35<=evaluate_for_categories(Amount, "stickers"); Shipping=0

To check several (sub-)categories at once, you can "simply" use:
Name="Free Shipping"; 35<=evaluate_for_categories(Amount, "stickers", "stickers-subcat1", "stickers-subcat2", "stickers-subcat3"); Shipping=0

Sorry,
Reinhold

PS: once I implement the evaluate_for_subcategories function, of course the rule would simplify to
Name="Free Shipping"; 35<=evaluate_for_subcategories(Amount, "stickers"); Shipping=0

Shipping Rules doubt 16 Jan 2016 18:40 #6

  • Thibis
  • Thibis's Avatar Topic Author
All of the stickers are on Stickers category, that is not a problem.

Do you have some Demo page for test this rule?

And how much cost the advanced plugin? How can I pay?

Regards

Shipping Rules doubt 16 Jan 2016 19:09 #7

Dear Thibis,
We have a demo installation available at: demo.open-tools.net/woocommerce/

The advanced version of the plugin is available at: open-tools.net/woocommerce/advanced-ship...for-woocommerce.html
Payment is only possible via PayPal (credit cards, bank transfer or transfer directly from your PayPal balance are supported).

Best regards,
Reinhold

Shipping Rules doubt 16 Jan 2016 19:45 #8

  • Thibis
  • Thibis's Avatar Topic Author
And have the function "evaluate_for_categories(Amount, 123)" for I test?

Ok, I will see.

Regards
  • Page:
  • 1