Custom cases of product in Magento? - php

Setting a Magento store for a winery. They well bottles of wine, but you can only order bottles in cases of wine. There are 12 bottles of wine in a case, and you can make a custom case.
So user could pick 4 Chardonnay, 6 Merlot and 2 Shiraz to make a case of 12. But they could not just choose 4 Chardonnay and 6 Merlot. Orders have to be in multiples of 12.
Is there any way in Magento via default functionality or an extension to enforce this requirement in my Magento store?
thanks

I've not seen this specific functionality, but you could use a bundle w/ user defined quantities, with the addition of some custom logic for enforcing the multiples. This is likely to be your fastest path to getting this running.
Hope that helps,
Joe
EDIT: Resources on how to set up a bundle are a little slim on the internet. I did find an old video from when bundles were released that covers the basics.
The fast story is that you need to set up a bundle with items that are marked as "user defined qty", which will display a qty box for each block that is defined in this way. Then grab the inputs when the form submits and reject it if the quantities don't add up to a multiple of 12.
Upon consideration, pricing bundles this way may not be trivial unless you are providing a consistent price for each bottle of wine. e.g. You cannot easily jump the price from 1-dozen to 2-dozen.

What you are trying to do is what I call a "configurable bundle." The base bundle product would be a case with 12 bottles. You can then configure the bottles within the bundle.
There isn't a way to do this with Magento proper. In my former position we tried doing this with custom apparel. The base bundle product would be a blank shirt. You would then try to configure the shirt with screen printing, embroidery, etc.
We ended up creating/managing a custom object within the cart. We then had to write some custom pricing logic for the cart.
I know that this feature has been talked about for quite some time.

Related

WooCommerce: Product variations that don't require all options selected

So I thought I could figure this out in a fairly straightforward manner, but it has been utterly perplexing me: I'm setting up a store to sell fonts. These fonts are available in a variety of licenses that affect the price: For example:
Desktop
1-5 Users
6-10 Users
10+ Users
Web
1 Domain
Up to 5 Domains
Up to 10 Domains
...etc. As the store is selling packs & collections as well as individual weights & styles, all of these variations are customisable with regards to their price, attached files, etc. Plus, due to the licensing of some typefaces, not all are available under the same licenses.
The issue: If a user selects Desktop: 1-5 Users, then they definitely shouldn't be required to select a Web license. However, if I try to add a font to my cart with just Desktop: 1-5 Users selected and no Web selection, it fails.
In the backend I currently have all Desktop variations set to 'Any Web...' and vice versa, but it doesn't make any difference.
As an addendum to this, I experimented with using jQuery to set any unchosen selection's value to 'null'; so, user selects Desktop: 1-5 Users; Web dropdown is automatically hidden and value set to 'null'. This works (sort of) insofar as the product will get added to the cart, but it appears as:
Fontname
Desktop: 1-5 Users
Web: null
Again, I can edit the template in /woocommerce/single-product/add-to-cart/variable.php to not display the null attribute on the site, but it still appears in emails, in the order on the backend, etc. Ideally I want a way to simply not have all license attributes being selected as a prerequisite of adding a font to the cart.
Hopefully I am just not seeing the wood for the trees here and missing something blindingly obvious and simple.
It might be better to split the licenses into two separate products - web and desktop.
Or perhaps you could chain or combine them using one of the Woothemes product grouping extensions. Alternatively, the Extra Product Options extension could be suitable to your needs. The Extra product options adds additional metadata to each order, you can use conditional logic on the product page to help guide a user to the best product/price match.
Good luck! eCommerce is harder than it looks!
Think about adding as default:
no web licence
no dekstop licence
It will produce:
Desktop
No desktop
1-5 Users
6-10 Users
10+ Users
Web
No web
1 Domain
Up to 5 Domains
Up to 10 Domains
In woocommerce you can select no web/desktop as default variation and uncheck visible on product page.
Similar future can be achived by PHP code by hooking to woocommerce filters, but in my opinion using product configuration is much more elegant.

Magento - adding special shipping rules?

Okay, so I am building a Magento store for a client who wants a fairly simple shipping setup, but one that I am not sure Magento supports.
She wants the customer to be billed:
5 dollars for 1 item
7 dollars for 2 items or
10 dollars for 3+ items
Is this something that can be added? If so, how do I go about it?
If you need anything about shipping, at first you have to check WebShopApps extensions
I believe that even their free Matrix Rate allow that
http://www.magentocommerce.com/magento-connect/webshopapps-matrixrate-1-multiple-table-rates-extension-certified-bug-free.html
http://wiki.webshopapps.com/extensions/matrix-rates
yes its possible
you have to build simple shipping module and in the collectRate Method you check how many items in the current checkout session
Mage::helper('checkout/cart')->getCart()->getItemsCount();
and based on this you assign the amount for the shipping.
its pretty much easy straight forward module.
http://www.magentocommerce.com/wiki/5_-_modules_and_development/shipping/create-shipping-method-module

Magento: Generating Thousands of Products and Configurable Attributes

I've looked all over Google and here at SO and I just can't find a solution.
I have a store that sells custom computers. Customers are able to select a model and then configure all aspects of the computer.
I was directed to the SCP Extension for managing my Configurable Products: "With SCP you can set a price for each combination of attribute values, e.g. Standard, Intel, 4GB RAM = $500." And that works marvelously.
However, as I've started creating my products, I didn't anticipate having to create literally thousands and thousands of Simple Products for every single, minute customization... AND THEN creating the Configurable Product. Seriously... THOUSANDS! It would probably take me 2 solid weeks of full-time simple product creation.
Having said that, is there a way to create am Excel or Numbers document and then simulate all possible variations? I believe it's called a Matrix.
I mean, how else does anyone put together a shop that sells more than 20 T-Shirts with two configurable attributes (Size, Color)?
You're doing it wrong! :-)
Whereas the components themselves are the inventory items, and you have a large and arbitrarily-variable combination of those inventory items to create a purchasable product, you will benefit from using the Bundle product type. It allows you to present groups of products together and to set required and optional components.
For frontend example, see: http://demo.magentocommerce.com/my-computer.html
For backend, see: http://demo-admin.magentocommerce.com/index.php/admin/catalog_product/edit/id/165/
Added my comment as answer.
Did you see this extension mageworx.com/advanced-product-options-magento-extension.html?

Buy One Get One Free Scripting Strategy in Magento

My objective is to create a buy xyz get xyz free, where x, y, and z are separate products. When purchasing EITHER x, y, or z, the customer can one of x, y, or z products for free.
I've tried to create this function within Magento's price rules, but I have not had any success whatsoever. I've read pretty much everything on the internet regarding these rules and have gotten nowhere. I'm thinking about creating a page that allows the user to select the products they would like to purchase in sequence, then using that information to add a bundled cart item to the user's cart. There may be a simpler way, though, and I'm wondering if anyone has any insight.
Please note that the items in question are configurable items with two attribute sets, just to make it interesting.
I'd hook into the Shopping Cart price rules engine for this. The system is designed to apply a set of rules an alter the price of a cart. I'd
Figure out where the pricing rules are applied
Override that method using the config override system built into Magento
Have the override method first call its parent, so that all original pricing rules are applied
Once that's done, include you custom logic at the end
Next, and related to #4, create new model objects that keep track of which products are buy one/get one, and (optionally) create a UI in the admin to manage these relationships. These are the models you'd be looking at in #4 to apply your rules.
Good luck.
So since I was unable to acquire the time resource to implement Alan's answer, I got a workaround going for this by adding custom options to the configurable products, which were dropdowns of the different "bogo" products. This is flawed in that it does NOT account for stock, but in my situation, it worked in the time being.

Magento, add Clothing size attribute without Configurable Product

I want a simple way to let my user pick there clothing size before buy
but Configurable Product seems like to much overkill. you have to make a product of every size
and then you have to make a configurable product.
the shop is for my dad and if i have to explain him how he has to do this it would be weeks for him to know this, (it took several days to make him learn to create a simple product)
Is there any other possibility to create a product and in the front end let the user select the size attribute ..
there has to be a more simple way than this ?
The reason a configurable product relies on child simple products is to keep track of inventory--the simple product is the physical, shippable unit (Crew Neck Shirt-Red-Small) and the configurable product, as you know, is a "meta" product that groups all of the (Crew Neck Shirt-Some Color-Some Size) combinations together.
If you don't care about having your Magento store track inventory, then you can use a simple product with custom options. This is usually used for things that you make on the fly, like monogramming a t-shirt, or screen printing a t-shirt. Create the simple product and take a look at the Custom Options tab on the left side. There you can define a drop-down for your size and specify the options there. Unlike a product attribute, however, I'm pretty certain that you'll have to re-create the size options for each product that you decide to sell this way.
The Magento Web site has a video tutorial that shows how this works. You might show that to him.
I don't think you'll find too many arguments that the Magento admin interface is extremely confusing--even for computer savvy users--but it is what it is. Good luck!

Categories