Linux 软件免费装
Banner图

Gather Grove Sync for Notion

开发者 gturtle108
更新时间 2026年10月20日 03:55
PHP版本: 8.2 及以上
WordPress版本: 7.1
版权: GPLv2 or later
版权网址: 版权信息

标签

forms woocommerce elementor sync notion

下载

0.53.0 0.52.2 0.53.2 0.54.0 0.55.0 0.55.1 0.53.1 0.52.0 0.52.1 0.52.3

详情介绍:

Gather Grove Sync for Notion sends your WordPress data to a Notion database — form submissions (Elementor Pro, Contact Form 7, WPForms, Fluent Forms), WooCommerce orders, Gather Grove Booking activity, and anything else via an incoming webhook or the developer API. The plugin owns the Notion schema for you — columns auto-extend as data arrives, with smart type mapping (email → Email, tel → Phone, date → Date) and a rich_text fallback for anything unrecognized. Features How it works
  1. Create a Notion integration at https://www.notion.so/profile/integrations and copy the token.
  2. Install and activate the plugin, then go to Settings → Gather Grove Sync for Notion.
  3. Paste the token (or use the one-click "Connect to Notion"). Either paste an existing database ID, or use the built-in Create a Notion database tool to make a fresh one.
  4. The integration must be invited to your Notion database (in Notion: open the database → ··· → Connections → add your integration).
  5. Submit a form, place a WooCommerce order, or send a webhook — the plugin auto-creates whatever columns it needs and writes the record. See and control every source on the Sources tab.
What's not included Read the full user guide at gathergrove.io/docs/notion-sync.

安装:

  1. Upload the gather-grove-notion-sync folder to /wp-content/plugins/, or install via Plugins → Add New → Upload Plugin and choose the zip.
  2. Activate through the WordPress Plugins menu.
  3. Go to Settings → Gather Grove Sync for Notion and connect your Notion workspace (one-click "Connect to Notion", or paste an integration token).
  4. Either paste an existing database ID into the Default Notion Database ID field, or use the Create a Notion database section to make a fresh one.
  5. In Notion, open the database as a full page → click ••• → Connections → add your integration. (If you used the in-plugin creation tool, this is automatic.)
  6. Click Test connection & refresh schema to verify everything's wired up.
  7. Submit a form on your site to test.

屏幕截图:

  • Sources — every installed form and store plugin syncs automatically; flip a source off or route it to a different database.
  • Form selection — sync every form or only the ones you tick, with a per-form database override and one-click database creation.
  • Per-form field mapping — how each field lands in Notion, with a rescan when a form changes.
  • Tools — test the connection, refresh the schema, and backfill historical submissions with live counts.
  • Activity — the recent sync log with created, updated and failed badges and direct "View in Notion" links.

升级注意事项:

0.53.0 A member's Notion row now follows their email change instead of a second row being created. 0.52.2 Booking now keeps one Notion row per client without the Deduplication setting, WooCommerce status changes and Contact Form 7 entries with a failed email now sync. Existing duplicate rows are not merged. 0.52.1 Requires WordPress 6.9 or later. Updates the shared Gather Grove core so the whole suite runs the same version. 0.34.0 Notion Sync now folds into the unified Gather Grove admin menu when other Gather Grove plugins are active; standalone installs are unchanged. Purely additive. 0.32.0 Gather Grove Booking guest bookings now sync to Notion (not just members). Tested up to WordPress 7.0. Purely additive. 0.31.0 Adds Gather Grove Booking sync (bookings/attendance/purchases → a Notion CRM, when Booking is active) and a friendlier database dropdown on the Sources tab. Purely additive. 0.30.0 Adds a Sources tab to see and control every connected source, one-click webhook setup, and a first-run setup checklist. Purely additive — existing syncs are unchanged. 0.29.0 Adds native sync for Contact Form 7, WPForms, Fluent Forms, and WooCommerce orders, plus a secure incoming webhook. Auto-detected — no setup for installed form plugins. Purely additive; your Elementor sync is unchanged. 0.28.0 Renames internal tables/options to the gg_notion_sync_ prefix automatically on update — your connection, settings, mappings, and history are preserved (no reconnect needed). Also drops the admin-page Google Fonts request for privacy. 0.14.0 Adds optional per-database overrides on the Column Rename Map. No action required — existing global renames keep working as-is. Visit the new "Per-database overrides" subsection only if a single column name needs different renames in different databases. 0.13.0 Adds a persistent retry queue: failed Notion writes now retry automatically via WP-Cron with exponential backoff (5 attempts over ~14 hours). Transient outages no longer lose live submissions. Installs a new DB table on activation. Strongly recommended. 0.12.0 Adds a scope picker in the Backfill section so you can target a specific form (or a few) for a one-off backfill without flipping your live sync mode. No behavior change unless you opt in. 0.11.0 Adds dedup conflict detection — surfaces silent multi-match cases in the activity log so duplicates in Notion don't go unnoticed. Recommended. 0.10.0 Multi-select Elementor fields now create proper Notion multi_select columns (one chip per selection) instead of one comma-joined value. Existing single-select columns from older versions are not re-typed; delete + re-sync in Notion to convert. 0.9.0 Fixes the within-chunk dedup race that caused duplicate rows during backfill bursts. Adds a Send Test Row diagnostic button and Export CSV for the activity log. Recommended. 0.8.0 Adds three aggregation columns auto-populated on dedup-merge: Forms Submitted (chips), Submission Count, First Submitted. See at a glance which forms a person filled out and how many times. 0.7.5 New Column Rename Map: rename auto-generated columns in Notion's UI, then add a Old Name -> New Name entry in settings to keep the plugin writing to the renamed column. 0.7.4 Auto-cleans pasted-from-URL database IDs (trailing ?, query params, full URLs). Self-heals existing bad data without re-save. 0.7.3 Activity log auto-recovers if missing; backfill errors surface the actual Notion API message inline. Strongly recommended. 0.7.2 Fix for backfill silently skipping all submissions on certain Elementor Pro versions. Recommended. 0.7.1 WP.org packaging. No functional changes. 0.7.0 Notion database creation moved inside the plugin. No need to bootstrap databases manually anymore. 0.6.0 Multi-database routing. Schema cache is now per-DB. No action required for existing installs — overrides default to empty. 0.5.0 Notion token now encrypted at rest. Migration runs automatically on first load after upgrade. 0.4.0 New activity log + connection banner. Default shared fields trimmed — if you were relying on name-based merging, edit the shared fields list to add it back.

常见问题:

Does this work with the free version of Elementor?

No. The plugin hooks into elementor_pro/forms/new_record, which is only available in Elementor Pro.

Which sources are supported?

Out of the box: Elementor Pro, Contact Form 7, WPForms (including the free Lite version), Fluent Forms, WooCommerce orders, and Gather Grove Booking (bookings, attendance, and purchases — members and guests). Any other service can POST to a secure incoming webhook, and developers can push records with gather_grove_notion_record(). Each source auto-activates when its plugin is present — see and manage them all on the Sources tab.

What happens to columns I don't configure?

The plugin auto-extends the database schema. Field labels become column names; types are inferred from the source field type (email → Email, number → Number, etc.) with a rich_text fallback for anything unrecognized.

Will deduplication accidentally merge two different "John Smiths" by name?

Only if you configure name fields as shared. By default, only Email, Phone, and Phone Number are treated as merge keys — they're the only fields reliably unique per person. You can edit the shared field list in settings, but adding name fields is a known footgun: a duplicate row is just visible noise, but a wrong merge silently destroys data.

Can I sync historical Elementor submissions?

Yes, if Elementor's Submissions storage is enabled (visible at Elementor → Submissions in WP admin). Use the Backfill Historical Submissions section in plugin settings. Backfill is idempotent — re-runs skip already-synced submissions.

Is my Notion integration token safe?

The token is stored encrypted at rest using AES-256-GCM. The encryption key is derived from your WordPress AUTH_KEY (defined in wp-config.php) via SHA-256. This defends against database-only leaks (e.g. SQL injection in another plugin, leaked DB backups). It does not defend against full server compromise — if an attacker has both the database and wp-config.php, the token can be decrypted.

What if my Notion database fills up?

Notion databases cap at ~100 properties. Most sites stay well under this. If you have many forms with mostly-unique fields, the connection banner shows the property count so you can monitor it. The fix is either to share more field labels across forms (so they collapse into single columns) or to use multi-database routing to split forms across multiple Notion databases.

What if Notion is down?

The plugin retries once immediately, after a one-second pause — deliberately not the longer wait Notion's Retry-After header asks for, because this runs while your visitor waits for the form to submit. If that retry also fails, the write is handed to a background queue with exponential backoff (1 min → 5 min → 30 min → 2 hr → 12 hr), where waiting properly costs nobody anything. After 5 attempts the entry is dead-lettered; dead-lettered writes are visible on the Tools tab with a "Clear" control. A failure that retrying cannot fix — no token, a revoked token, a deleted database — is reported rather than queued. Retrying those just fills the queue with the same error.

Can I send the same form to multiple Notion databases?

Not in this release. Each form has at most one destination (its override, or the default). If you need fan-out, the simplest workaround is to query the destination Notion database via Notion's own automations to forward rows.

更新日志:

0.55.1 0.55.0 0.54.0 0.53.2 0.53.1 0.53.0 0.52.3 0.52.2 0.52.1 0.52.0 0.51.4 0.51.3 0.51.2 0.51.1 0.51.0 0.50.0 0.49.0 0.48.0 0.47.0 0.46.0