Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions change_log.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
### 1.1.1 | 2026-08-11
- gravity-forms-abilities: Document productField auto-linking for quantity and option fields, and add the option field example to the pricing table.

### 1.1.0 | 2026-08-04
- gravity-flow-abilities: Add the skill — workflow guidance for Gravity Flow abilities via the WordPress Abilities API (MCP), covering step CRUD, approval policies, reassignment, and feasibility consultation.
- gravity-forms-abilities: Add a phone pitfall row and a phone step to the form-creation workflow; an omitted phoneFormat breaks rendering on older Gravity Forms versions.
Expand Down
2 changes: 1 addition & 1 deletion skills/gravity-forms-abilities/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ license: GPL-2.0+
compatibility: Requires a WordPress site with Gravity Forms 2.9+ and the MCP endpoint enabled (GF Settings → MCP)
metadata:
author: gravityforms
version: "1.0.3"
version: "1.0.4"
---

# Gravity Forms Abilities — Agent Skill
Expand Down
3 changes: 3 additions & 0 deletions skills/gravity-forms-abilities/references/field-config.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,12 +105,15 @@ Pricing variants are NOT standalone field types. `system-field-types` intentiona
| Hidden product | `{ "type": "product", "inputType": "hiddenproduct", "basePrice": "$9.00" }` |
| Calculated price | `{ "type": "product", "inputType": "calculation", "calculationFormula": "{Qty:3} * 2" }` |
| Quantity for a product | `{ "type": "quantity", "label": "Qty", "productField": 1 }` (`productField` = the product field's ID) |
| Options for a product | `{ "type": "option", "label": "Add-ons", "productField": 1, "choices": [{ "text": "Gift wrap", "value": "Gift wrap", "price": "$5.00" }] }` |
| Flat shipping | `{ "type": "shipping", "inputType": "singleshipping", "basePrice": "$5.00" }` |
| Shipping options | `{ "type": "shipping", "inputType": "select", "choices": [{ "text": "Ground", "value": "Ground", "price": "$5.00" }] }` |
| Order total | `{ "type": "total", "label": "Total" }` |

The API applies the same defaults the editor would: bare `type: product` becomes `inputType: singleproduct`; single/hidden/calculation products get their `.1` (name) / `.2` (price) / `.3` (quantity) sub-inputs created automatically; choice-based product and shipping fields get `enablePrice` set (required — without it, priced submissions fail GF's anti-tampering state validation).

`productField` on `quantity` and `option` fields: if omitted, current Gravity Forms links the field to the **nearest preceding product field** in the form. That is only safe on single-product forms — ALWAYS set `productField` explicitly when the form has more than one product.

**Submitting pricing fields:**

- Single product: `"input_1.1": "Widget"`, `"input_1.2": "$25.00"`, and `"input_1.3": "2"` for quantity (or use a separate quantity field: `"input_3": "2"`).
Expand Down
Loading