A condition checks one field of a product, e.g. product_type includes Shoes. You use conditions in many places:
Each condition has a field, a check (the operator), and usually a value. Click the field to pick an source field, a global store field or, in channel rules, a channel field that is higher in the list. You can also type the name of any field.
All text checks ignore upper and lower case. Shoes, shoes and SHOES are the same.
When a rule has more than one condition, each one after the first starts with and or or. Click it to switch.
And is checked before or. So "A and B or C" means "(A and B) or C". The product matches when A and B are both true, or when C is true.
For example:
product_type is equal to T-Shirtscolor is equal to Navytags includes navyA navy T-shirt matches. A product tagged navy matches, whatever its type. A red T-shirt without the tag doesn't match.
To check "A and (B or C)", repeat A: "A and B or A and C".
The value of a condition can include other fields, written as {{field}}. For example, compare_at_price is greater than {{price}} matches products on sale. Write global store fields as {{internal:name}} and channel fields as {{output:name}}. See Using field values in text.
The examples use a product with title = Merino Crew Tee, price = 79.00, tags = merino, summer and an empty material.
| Operator | Matches when the field… | Example that matches |
|---|---|---|
| is equal to | is the same as the value. Spaces at the start and end are ignored. | title is equal to merino crew tee |
| is not equal to | isn't the same as the value. | title is not equal to Rain Jacket |
| includes | contains the value anywhere. | title includes crew |
| doesn't include | doesn't contain the value. | title doesn't include jacket |
| begins with | starts with the value. | title begins with Merino |
| doesn't begin with | doesn't start with the value. | title doesn't begin with Wool |
| ends with | ends with the value. | title ends with Tee |
| doesn't end with | doesn't end with the value. | title doesn't end with Top |
"includes" also finds the value inside longer words, so tags includes sale matches a product tagged wholesale. Use is in list or matches regexp when you need a whole value or whole word.
| Operator | Matches when the field… | Example that matches |
|---|---|---|
| is empty | has no value, or only spaces. It has no value box. | material is empty |
| is not empty | has a value. | title is not empty |
These checks use the first number in the field and in the value, so 79.00 NZD counts as 79. If either side has no number, the condition doesn't match.
| Operator | Matches when the number… | Example that matches |
|---|---|---|
| is greater than | is more than the value. | price is greater than 50 |
| is greater or equal to | is the value or more. | price is greater or equal to 79 |
| is less than | is less than the value. | price is less than 100 |
| is less or equal to | is the value or less. | price is less or equal to 79 |
| is between | is between the two values, including both ends. You fill in two values. | price is between 50 and 79 |
| is not between | is outside the two values. A field with no number doesn't match. | price is not between 100 and 200 |
For these checks you fill in a list with one value per line, or a link to a Google Sheet or CSV file. Feedsmith reads column A of the link, and you can use both. Feedsmith reads a linked sheet again at most every 15 minutes. If the link can't be read, the condition doesn't match.
| Operator | Matches when the field… | Example that matches |
|---|---|---|
| is in list | is the same as one of the lines. The whole value has to match. | title is in list Merino Crew Tee and Rain Jacket |
| is not in list | isn't the same as any line. | title is not in list Gift Card |
| is in list (regexp) | matches any of the lines, where each line is a regular expression. | title is in list (regexp) ^merino and jacket$ |
| is not in list (regexp) | matches none of the lines. | title is not in list (regexp) gift |
A common use is a sheet of SKUs to exclude. Make an exclude rule with sku is in list and paste the sheet link. Your team can then add SKUs to the sheet without opening Feedsmith.
A regular expression is a pattern for matching text. For example, ^MCT- means "starts with MCT-", and \bnavy\b means "the word navy".
| Operator | Matches when the field… | Example that matches |
|---|---|---|
| matches regexp | matches the pattern anywhere in the value. | title matches regexp crew\s+tee |
| doesn't match regexp | doesn't match the pattern. | title doesn't match regexp ^gift |
A pattern with a mistake in it never matches.
These count the characters in the field, including spaces.
| Operator | Matches when the field… | Example that matches |
|---|---|---|
| longer than | has more characters than the value. | title longer than 10 (it has 15) |
| shorter than | has fewer characters than the value. | title shorter than 25 |
For example, an exclude rule with title shorter than 5 removes products with titles that are too short.