8

The main problem is that options don't always have a direct mapping to a stock level. For example, if your products have both "Size" and "Color", it doesn't make sense to say "Red is out of stock" - it depends on the size as well. Generally the best way to solve this is using dynamic css variables. For example, simply add class="store_product_out_of_stock" ...


6

If you are using version 1.6 or lower of Store there is a known bug with dynamic product variables that was fixed in version 1.6.1. (Release Notes). Could you update to the latest version of Store and see if the issue still persist.


6

You can access most of the basic variables directly through the "Product Details" fieldtype. For example, assuming you named your field product_details, you can access the price inside your channel entries tag like so: {product_details:price} However, you can't access the modifiers that way (there is no way for the fieldtype to return variable loops). To ...


3

To modify the actual weight of the item so that it adjust things like shipping weight you would need to write an extension (available hooks) that would adjust the actual values for calculations.


2

There is nothing built into Store currently that would allow you to create modifiers on a per channel basis if you want the modifiers to adjust price or stock levels. There is currently a feature request for Global Product Variations that you can vote for. If you do not not need to adjust the price, quantity or have a unique SKU for your variations you can ...


2

There's no backspace parameter. One possible solution I can think of would be to use css and the :last-child selector. For example: <div class="modifiers"> {modifiers} <span class="modifier"><strong>{modifier_name}:</strong> {modifier_value}<span class="separator">,</span></span> {/modifiers} </...


2

A conditional based on an entry's ID might look like this: {exp:store:product} {if entry_id == "XXX"} <select name="color"> <option value="Green">Green</option> <option value="Yellow">Yellow</option> </select> {/if} {/exp:store:product} Replace XXX ...


2

In Store 1.x, the modifiers array is stored as a base64 encoded, serialized PHP array. To decode it, you need to use the following: $modifiers = unserialize(base64_decode($str)); In Store 2, the modifiers array is simply stored as JSON. This makes life much easier. To decode it into a PHP array, simply use: $modifiers = json_decode($str, true);


1

Not really (without looping through the orders in PHP which would be very slow). That's the point of having separate SKUs. SKU stands for "Stock Keeping Unit", and so by definition if you want to keep track of how many of each item was purchased you should use separate SKUs. In fact Store already provides built in reports to display how many of each SKU you ...


1

There is nothing built into Store outside of categories but even with that you can't have a modifier that is a different category then the rest of the entry. You will need to write an extension that creates a new variation type that they could select from the drop down on the publish page. In your variation you will still was a name and price field but you ...


1

Looks like the answer you need is in one of the 2 answers given here mate : Store module: How to update product modifier from the cart page?


1

There is not really a built in way to preselect the most expensive modifier by default. Having said that, then you should be able to get around that as long as you setup some publishing standards. The easiest way should be to make sure that either the first or last modifier is the most expensive. If you have done that you should simply need to add the ...


1

There is nothing currently in Store that allows you to do something like this. There is currently Global Product Variations feature request that would cover exactly what you are looking for. Having said that if your product modifiers are not adjusting the price, do not require stock levels, or needing separate SKUs (I think those are the only limits) you ...


1

Yes. The {modifiers} tag is a loop so within that loop if you wanted to call out a particular modifier by name then you'd need to run a conditional check as you are currently showing in your example.


1

Your best bet here is to leave the actual price calculation out of the entry itself, and instead do it in the template using the Volume data you pull from the product entry and your available Material entries. I'd write a custom plugin (start with pkg.io) that accepted the product's volume as a parameter, then grabbed a list of the materials and did the ...


Only top voted, non community-wiki answers of a minimum length are eligible