Overview
This guide explains how to update custom meta fields in WP Store Locator (custom post type wpsl_stores) using Zapier and WP Webhooks Pro.
It is ideal for use cases like:
- Updating store details from Monday.com
- Managing phone numbers, emails, prosthetists, and more
- Automating updates via webhook actions
🔧 Step 1: Set Up Webhook Receiver in WP Webhooks Pro
- Go to WP Webhooks Pro → Receive Data
- Create a new webhook
- Name:
update_store_fields(or anything you like) - Action:
update_post
- Name:
- Copy the webhook URL provided
🔧 Step 2: Format the JSON Payload in Zapier
In your Zapier Zap:
- Add a Webhooks by Zapier → Custom Request action
- Configure as follows:
- Method:
POST - URL: paste the WP Webhook URL from step 1
- Headers:
Content-Type:application/json
- Payload Type:
Raw
- Method:
- Paste your raw JSON in the body:
{
"post_id": "18764",
"post_type": "wpsl_stores",
"manage_meta_data": "{\"update_post_meta\":[
{\"meta_key\":\"wpsl_cell\",\"meta_value\":\"{{Cell Number from Monday}}\"},
{\"meta_key\":\"wpsl_email\",\"meta_value\":\"{{Email from Monday}}\"},
{\"meta_key\":\"wpsl_prosthetist\",\"meta_value\":\"{{Prosthetist Name}}\"},
{\"meta_key\":\"wpsl_phone\",\"meta_value\":\"{{Phone Number}}\"}
]}"
}
🔁 Replace {{...}} with dynamic fields from Monday (Zapier’s field picker)
✅ Required Formatting Notes
manage_meta_datamust be a JSON string, not a JSON object- All
"inside themanage_meta_datavalue must be escaped as\" - Each field should be in the format:jsonCopyEdit
{ "meta_key": "your_key", "meta_value": "your_value" }
✅ Common WP Store Locator Field Names
| Field Name | Meta Key |
|---|---|
| Phone | wpsl_phone |
| Cell | wpsl_cell |
wpsl_email | |
| Prosthetist Name | wpsl_prosthetist |
| Address (street) | wpsl_address |
| City | wpsl_city |
| State | wpsl_state |
| ZIP | wpsl_zip |
| Country | wpsl_country |
Note: Formatting manage_meta_data in Zapier
When using the manage_meta_data field in Zapier with WP Webhooks Pro, it must be formatted as a single-line, escaped JSON string inside your main JSON payload.
Why?
- Zapier parses multi-line or improperly escaped strings incorrectly
- Any formatting error can cause the
post_idor entire request to be dropped - WP Webhooks will then return the error:
"The post id is required"
✅ Always follow these rules:
- Put the entire
manage_meta_datavalue on one line - Escape all quotes (
") as\" - Do not include line breaks or trailing commas
- Use
Payload Type: Rawand headerContent-Type: application/jsonin Zapier
Recommended Tool:
Use https://jsonstringify.org to convert a valid JSON block into a properly escaped single-line string.
Example of working format:
"manage_meta_data": "{\"update_post_meta\":[{\"meta_key\":\"wpsl_cell\",\"meta_value\":\"555-000-1111\"}]}"
This structure is critical for updates to work reliably through WP Webhooks.
✅ Verifying Updates
- Use phpMyAdmin or query your DB:sqlCopyEdit
SELECT * FROM wp_postmeta WHERE post_id = 18764 AND meta_key = 'wpsl_cell'; - Or use a plugin like Show Post Meta to view meta fields in WP admin
🛠 Troubleshooting
| Symptom | Fix |
|---|---|
"meta_data": false | You’re not using manage_meta_data correctly (check escaping) |
"manage_meta_data Success": true but no update | Meta key might be filtered or silently rejected; use update_post_metaformat |
| Zapier fails | Confirm JSON is valid and escaped — use JSONLint or jsoneditoronline.org |
💡 Tip: Generating Meta String Easily
Use the Meta Data Generator from WP Webhooks to build your string visually.