Initial skills documentation — 25 categories, all SKILL.md + references + scripts
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# WPForms Integration Patterns
|
||||
|
||||
Various integration patterns for WPForms configurations, especially around feature-gated notifications and external data population.
|
||||
|
||||
## Notification gating by payment processor
|
||||
|
||||
WPForms notifications have a `paypal_commerce` flag. When set to `"1"`, the notification ONLY fires after PayPal confirms payment. For forms that offer "Pay Offline" as an option alongside PayPal, notifications configured with this flag will never trigger for offline payment submissions.
|
||||
|
||||
**Detection:** Check the notification settings JSON for `"paypal_commerce": "1"`.
|
||||
|
||||
**Fix:** Remove the `paypal_commerce` key from the notification object via PHP:
|
||||
|
||||
```php
|
||||
unset($settings["settings"]["notifications"]["1"]["paypal_commerce"]);
|
||||
$wpdb->update($wpdb->posts, ["post_content" => json_encode($settings)], ["ID" => $form_id]);
|
||||
```
|
||||
|
||||
This appears to be set automatically when PayPal Commerce is configured — not exposed in the WPForms UI.
|
||||
|
||||
## Custom JS populating a WPForms field
|
||||
|
||||
When a custom HTML widget (dropdowns, interactive elements) needs to submit data to WPForms:
|
||||
|
||||
1. Add a **Single Line Text** field to the WPForms form, set CSS class `apex-vehicle-field`
|
||||
2. Update the JS to populate it on every selection change:
|
||||
|
||||
```javascript
|
||||
var wpf = document.querySelector('.apex-vehicle-field input, .apex-vehicle-field textarea');
|
||||
if(wpf) wpf.value = year + ' ' + color + ' ' + make + ' ' + model + ' ' + hp;
|
||||
```
|
||||
|
||||
**Key: ensure `hp` is in scope** — save the HP value before using it in the WPForms line. Common bug: declaring `hp` inside the spec-display block and trying to reuse it outside.
|
||||
|
||||
## Google Sheets date format
|
||||
|
||||
WPForms Google Sheets provider config stores the date format in the form's JSON. Look for:
|
||||
|
||||
```json
|
||||
"G": "{entry_date format=\"d/m/Y\"}"
|
||||
```
|
||||
|
||||
Change to `"m/d/Y"` for US format by editing the form's post_content in the database.
|
||||
Reference in New Issue
Block a user