Configurable option logic is used to show and hide an individual configurable option based on the value selected for one or more other options.  This option will be available as of v5.1.

As an example, let's say you are selling a box of chocolates.  For this box, you offer a radio option for whether to gift wrap the box (with options "Yes" and "No").  If the "Yes" option is checked, you now show a textarea field for a personalized message as well as a quantity slider for how many balloons you want to include with the package.

Option logic is controlled at the level of Configurable Option Groups and can be configured at Packages > Configurable Options > Option Logic.

Let's examine the interface a bit.


Each of the tabs at the top represent a configurable option within the option group.

Condition Sets: Each configurable option is assigned a number of "Condition Sets" (the big gray boxes).  If any one of the assigned Condition Sets is fulfilled, then the Configurable Option will be displayed.  If not then the Configurable Option will be hidden.  If the option has no assigned Condition Sets, then it will always be shown.

A Condition Set is "fulfilled" if all the conditions in the set evaluate as "true".

Conditions: Each Condition Set is assigned a number of "Conditions" (the rows inside each big gray box).  Conditions evaluate just like they read in the row.  Since in the first Condition of the first Condition Set in the screen shot has a Triggering Option of Test Radio, Comparison Operator of =, and a Value of Radio2.  So the condition reads "Display Test Check if the selected value of Test Radio is equal to Radio2".

Taking a look at the bottom Condition Set it reads "Display Test Check if the value entered for Test Text is equal to Text Value AND Test Textarea is equal to Textarea Value".

The option logic for Test Check is:

Display Test Check if

the selected value of Test Radio is equal to Radio2

OR the selected value of Test Dropdown is equal to Selectable2

OR the value entered for Test Text is equal to Text Value

    AND Test Textarea is equal to Textarea Value

Radio and Dropdowns

Configurable Option Logic works slightly differently for radio and dropdown options.  Instead of the whole configurable option being affected by a condition set, individual radio or dropdown items are affected.   The example above reads like this:

Display the Radio1 option under Test Radio if the value entered for Test Text is equal to "b" or equal to "c"

Display the Radio2 option under Test Radio if the value entered for Test Text is not equal to "c"

If all the options for a radio or dropdown are hidden, then the whole configurable option will be hidden as well.