Magento Free shipping ONLY on standard shipping - magento

I am having no problems setting up free shipping for certain items with shopping cart rules. However, it being Christmas time, I want to offer free shipping on standard shipping, but leave Express shipping at it's regular price. When I setup the shopping cart rule to give free shipping to a specific item it automatically reduces every flat rate shipping method to $0. Is there a way around this?

Please check the screenshot it might help you.. here regular is the shipping code for Standard shipping and i have added extra condition if order amount is more than $100.
Best of luck, Let me know if you have any issue.

I had a similar problem and I found a solution.
The Problem: Multistore website with multiple shipping method: flatrate, matrixrate. In some store the free shipping rule should be applied only to matrixrate and not flatrate, in some others should be applied to flatrate.
The Solution: Use the rule like explaned here with whatever condition but the shipping method one. Then create a module that extend the Flatrate model (or the one witch shouldn't be affected by the rule) for prevent to apply the shipping rule according to a configuration specific for website.
More info here: https://magento.stackexchange.com/a/173063/4647

Related

Magento 2 - how do I add multiple shipping methods with custom logic, without paying for a shipping extension?

I want to add the following shipping methods:
A price for sending an item:
to the home country
to the home country (priority)
to the EU
to the EU (priority)
to every other country
to every other country (priority)
As far as I know that can't be done out of the box with magento 2.
I also tried looking for a free extension to do that, but couldn't find any. Because I don't want to pay for one, I'd love to add that functionality with code on my own, so my question is:
Which files do I have to tamper in Magento 2, to add the logic from above (in a future proof way)?
Thanks
ps: If there's a free extension I didn't find, please let me know
ps2: The shipping company prices I'll be using all depend on weight btw, so I may need to add a formula in my code as well

Magento 2.0.7 Cart Price Rule - spend £30, get one free item for free

Getting quite frustrated with Magento 2's cart price rules today! We want to launch new offer on our shop:
Spend £30+ and receive a free tshirt (either SKU a or SKU b)
We've tried using the standard vanilla Buy X Get Y Free rule, but simply cannot get the rule to work.
The Conditions look like this:
Conditions
And the Actions look like this:
Actions
Any help would be very much appreciated. I am concerned that what we are trying to achieve might not be possible with the Magento 2 vanilla cart price rules logic.
Thanks!

Magento get chosen shipping and billing method address fields

How can I get the choosen shipping and billing fields during checkout? (I want to show them in sidebars)
I use this in shipping.phtml but ofcourse that's just for the current 'address' (and I want to use it in methods.phtml and other pages)
$this->getAddress()->getFirstname()
So I assumed that this would work out...
Mage::getSingleton('checkout/session')->getShippingAddress()->getFirstname()
But it didn't, anybody has a tip?
Addition:
This one was helping me a lot, but I'm stuck :-S
How do I get the shipping method the user has chosen during checkout?
Shipping and billing addresses are children of quote object. So something like this shall work:
Mage::getSingleton('checkout/session')->getQuote()->getShippingAddress()->getFirstname();

Virtuemart Coupon Plugin based on quantity not value

I've had a look at available Virtuemart plugins and I can't find anything close to what I am after. This is what I need.
Allow admin user to create coupon codes. An import feature would be nice as there will be thousands but I can handle this bit if needed anyway.
The admin user selects the number of products the customer is allowed for each coupon code.
When the customer uses the coupon code they are allowed to choose any product on the website up to the total amount of products issued to the coupon. Regardless of the products price.
Nice extra would be to allow free shipping with the coupon.
I've looked at the possibility of extending virtuemart and I think it would be possible. It would however require quite a lot of changes and if I can find something that is halfway there it would help me on my way.
Thanks in advance.
OK well time was running out and I didn't get an answer so I rolled my own. It was actually fairly painless. I can't release the code but I can give you a good idea of the steps and a direction to go in.
extend vm_ps_coupon and override the update, add and process methods. Add and update should only require a change to the array that is sent to the DB. See here for more info on extending classes
Alter the enum in the database to allow for quantity as well as total and percent.
Within your new update method handle the variation of quantity to do as you need.
In the update method you can also set a flag for free shipping in a session variable.
In templates/checkout edit list_shipping_methods.php. Simply check for the free shipping flag and load the free_shipping class. You can then call free_shipping->list_rates($vars);
extend vm_ps_checkout, override the add method, call the parent add method and then check the result so you can delete the session variable for the free shipping.
Finally you will need to make some changes in the HTML. Unfortunatly i could not find a way to override this easily and since its only two small changes to the markup i just went ahead and hacked the core. If anyone knows of another way that would be great? I did see something online about using a Joomla hook and a System plugin but I'd rather keep it reliant on Virtuemart only.
In administrator/components/com_virtuemart/html/ edit coupon.coupon_form.php to show the new quantity radio button.
Then edit coupon.coupon_list.php to display the correct values. Currently it will only display percent and total.
Hope this helps someone in the future. If you need some assistance then post on here and I'll be happy to help.

Magento -Adding multiple Shipping method

How to add 3 Flat rate shipping methods . i want to add Standard,2nd day Air,Next Day Air Shipping methods.
You will have to add new shipping methods for this I think.
There are some tutorials about this. See for example: http://www.magentocommerce.com/boards/viewthread/28617/ and mainly this (tutorial): http://www.magentocommerce.com/wiki/5_-_modules_and_development/shipping/create-shipping-method-module.
Hope this helps.
If you need such shipping methods available on checkout page use one of already created extension. For example:
First: http://www.magentocommerce.com/magento-connect/Yarhajile/extension/728/multiple-tablerates
Second: http://www.magentocommerce.com/magento-connect/IDEALIAGroup/extension/3224/ig-multi-flat-shipping

Resources