
內容簡介
Gather Grove Sync for Notion 是一款能將 WordPress 數據同步至 Notion 資料庫的外掛,支援多種表單提交及 WooCommerce 訂單,並透過安全的 webhook 或開發者 API 進行數據傳輸,簡化資料管理流程。
【主要功能】
• 多來源同步:支援 Elementor Pro、Contact Form 7、WPForms、Fluent Forms 和 WooCommerce
• 自動擴展架構:新表單提交時自動生成 Notion 欄位
• 智能類型映射:自動將表單字段映射至 Notion 屬性類型
• 多資料庫路由:可將不同表單發送至不同的 Notion 資料庫
• 去重功能:合併重複提交,保留時間戳記
• 活動日誌:記錄每次同步嘗試的成功與失敗
外掛標籤
開發者團隊
② 後台搜尋「Gather Grove Sync for Notion」→ 直接安裝(推薦)
原文外掛簡介
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
Many sources, one Notion pipe — Elementor Pro, Contact Form 7, WPForms (incl. Lite), Fluent Forms, and WooCommerce orders sync out of the box; any other service can POST to a secure incoming webhook. Every source funnels through the same dedup / column-auto-extend / retry / activity-log pipeline.
Auto-extending schema — submit a new form, the columns appear in Notion. No manual mapping.
Smart type mapping — Elementor email/tel/url/number/date/select/checkbox fields map to the matching Notion property types so your data is sortable and filterable.
Multi-database routing — send different forms to different Notion databases via per-form overrides, with a global default for everything else.
Deduplication — merge submissions by Email (or any column you choose) so the same person’s submissions across forms collect into one row, with a chronological log appended to the page body. Original page title is preserved on update so “first contact” stays visible.
Backfill historical submissions — paginate through Elementor’s Submissions storage in 25-row chunks. Idempotent — re-runs skip already-synced submissions.
Activity log — every sync attempt is recorded to a custom DB table, visible in the admin with success/failure badges and direct “View in Notion” links. Capped at 1000 entries with auto-prune.
Encrypted token storage — Notion integration token is stored encrypted at rest using AES-256-GCM, with the key derived from your WordPress AUTH_KEY.
Connection retry — one in-process retry on transient API failures (429, 5xx), then a background retry ladder for anything still failing.
One-click database creation — search for a parent page, set a title, click Create. New database starts pre-configured with the plugin’s system columns.
Connection status banner — green/red status at the top of the settings page with per-database breakdown when multiple databases are configured.
How it works
Create a Notion integration at https://www.notion.so/profile/integrations and copy the token.
Install and activate the plugin, then go to Settings → Gather Grove Sync for Notion.
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.
The integration must be invited to your Notion database (in Notion: open the database → ··· → Connections → add your integration).
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
The plugin does not provide a manual field-mapping UI — it owns the schema. Field labels become column names automatically. (If you need manual mapping, a different integration may suit you better.)
The Elementor source requires Elementor Pro (free Elementor has no form widget). Every other source — Contact Form 7, WPForms, Fluent Forms, WooCommerce, Gather Grove Booking, the webhook — works on its own.
Read the full user guide at gathergrove.io/docs/notion-sync.
External Services
This plugin connects to four external services. None is contacted until you
choose to connect it (to Notion, or to your own Postmark account) or, for web
push, until a member turns on notifications, and nothing is transmitted on a
fresh install that has not been configured.
1. Notion API (api.notion.com)
This is the service the plugin exists to talk to. It is used to read your
Notion database schema and to create and update pages in the database you
select.
What is sent, and when:
When you connect and pick a database: a request to api.notion.com/v1/search
and api.notion.com/v1/databases/{id} to list the databases and pages your
integration can see, and to read the chosen database’s column schema. Sends
your Notion integration token.
When a form is submitted, an order is placed, or a webhook arrives: a request
to api.notion.com/v1/pages containing the submitted field values that are
being synced — this can include personal data such as name, email address,
phone number, and any other field your form collects. Sends your Notion
integration token.
When you create a database from inside the plugin, run a backfill, or send a
test row: the same page/database endpoints, with the same kinds of data.
When a sync fails and is retried: the same page data is sent again.
Data is only sent for the sources you have enabled and the forms you have
selected. The plugin does not send site analytics, usage telemetry, or
administrator details.
Service provided by Notion Labs, Inc.
Terms of service: https://www.notion.com/terms
Privacy policy: https://www.notion.so/notion/Notion-Privacy-Policy-3468d120cf614d4c9014c09f6adc9091
2. Gather Grove OAuth broker (gathergrove.io)
Optional. This is used only by the one-click “Connect to Notion” button, which
exists so you do not have to create your own Notion integration by hand. It
holds the Notion OAuth application credentials, which cannot be shipped inside
a public plugin, and exchanges them for a token belonging to your workspace.
What is sent, and when:
When you click “Connect to Notion”: your browser is redirected to
gathergrove.io/wp-json/gg-notion-oauth/v1/start with the WordPress admin
URL to return to and a random one-time CSRF value. No site content, form
data, or credentials are included.
Immediately after you approve the connection in Notion: one server-to-server
request from your site to
gathergrove.io/wp-json/gg-notion-oauth/v1/redeem containing only the
single-use handoff code from the previous step. The broker responds with the
Notion access token for your workspace, which is then stored encrypted on
your own site.
The broker is contacted only during these two steps of the connection flow. It
is never contacted during syncing, and no submitted form data ever passes
through it.
You can avoid this service entirely: create your own Notion internal
integration and paste its token into the “Connect manually instead” field on
the Setup tab. The broker is then never contacted.
Service provided by Gather Grove (Golden Turtle Sound).
Privacy policy: https://gathergrove.io/privacy/
3. Postmark (api.postmarkapp.com)
Postmark — used to send your site’s email through your own Postmark account,
only after you connect one under Gather Grove → Settings → Email
delivery. When connected, your server sends Postmark your key, your sending
domain (to register it and check its DNS records), and each email it is asked
to send: sender, recipients, subject, body and any attachments. If you also
switch on “Send all your site’s email through Postmark”, every email your site
sends goes this way. Postmark then posts delivery, bounce, open, click,
spam-complaint and unsubscribe reports back to a secret address on your site.
Nothing is sent unless you connect an account.
Terms of service: https://postmarkapp.com/terms-of-service
Privacy policy: https://postmarkapp.com/privacy-policy
4. Web push services (Google, Mozilla, Apple, Microsoft)
Web push services — when a member turns on phone notifications, their browser
registers with its own push service, and your site sends each notification to
that service for delivery. The notification carries a short title and a link.
The push service receives it with the member’s browser subscription address,
and with your site’s admin email address, which the web push standard requires
as a contact for the sending site. Nothing is sent unless a member turns
notifications on.
Google privacy policy: https://policies.google.com/privacy
Mozilla privacy policy: https://www.mozilla.org/privacy/
Apple privacy policy: https://www.apple.com/legal/privacy/
Microsoft privacy statement: https://privacy.microsoft.com/privacystatement
Bundled third-party library
This plugin bundles Action Scheduler (https://actionscheduler.org/), a
background-processing library, which it uses to retry failed Notion writes.
Action Scheduler runs entirely on your own server and makes no external
requests. It creates four database tables (actionscheduler_actions,
actionscheduler_claims, actionscheduler_groups, actionscheduler_logs).
These tables are shared with any other plugin that bundles Action Scheduler, so
uninstalling this plugin deliberately leaves them in place.
