[WordPress] 外掛分享: Defer Forms for Contact Form 7

首頁外掛目錄 › Defer Forms for Contact Form 7
WordPress 外掛 Defer Forms for Contact Form 7 的封面圖片
全新外掛
安裝啟用
尚無評分
剛更新
最後更新
問題解決
WordPress 6.5+ PHP 8.0+ v2.7.1 上架:2026-09-14

內容簡介

Defer Forms for Contact Form 7 將 Contact Form 7 轉變為現代化的視覺表單建構器,保持其可靠性。使用者可以透過拖放介面建立多步驟表單,並在乾淨的控制台中捕捉提交資料,應用條件邏輯,提升表單的功能性與使用體驗。

【主要功能】
• 視覺拖放建構器,支援多步驟表單
• 提交資料庫,具搜尋、過濾及 CSV 匯出功能
• 視覺條件邏輯,簡易設定 AND/OR 規則
• 附件儲存,保留上傳檔案
• 20+ 預製模板,快速建立表單
• 提供垃圾郵件保護功能

外掛標籤

開發者團隊

⬇ 下載最新版 (v2.7.1) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Defer Forms for Contact Form 7」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

Defer Forms for Contact Form 7 turns Contact Form 7 into a modern visual form builder while keeping CF7’s reliability untouched. Drag-and-drop fields, build multi-step flows, capture submissions in a clean dashboard, and apply conditional logic — all without breaking any existing form.
Highlights

Visual drag-and-drop builder (React + dnd-kit)
Unlimited multi-step forms with progress bar
Submissions database with search, filter, and CSV export
Mark an entry replied or done, and answer it from the entry itself
Attachment storage — Contact Form 7 discards uploads; these are kept
Visual conditional logic (AND/OR rule builder)
Grid layout (1–4 columns, responsive)
Redirect after submit, to a page or a URL
Extra fields: star rating, country, password, dynamic text, product, quiz, character count
Import / export — move forms between sites as one JSON file
Revisions — the last ten versions of a form, with one-click rollback
Styling controls (colors, typography, spacing), plus a CSS class of your own per form
Spam protection (honeypot, time-trap, duplicate check)
Privacy: submissions join WordPress’s own export and erase tools
20+ ready-made templates
Telegram, Slack and Discord: every submission posted into a chat or channel as it arrives
A webhook: every submission posted as JSON to an address of your own, which is how Zapier, Make and n8n reach the rest of what you use

The Features screen lists everything this plugin does, and nothing it does not.
Documentation
Full documentation — every feature, how each one works, and the developer hooks — is at https://rupashdas.github.io/defer-forms-for-contact-form-7/ and is linked from every screen’s Help tab.
For developers
Submissions can be filtered before they are stored and hooked once they are — enough to keep a form out of the table, redact a field, or forward every entry somewhere of your own. Every hook is listed under “Hooks” below.
Defer Forms extends Contact Form 7 — never replaces it, never breaks existing forms.
Hooks
Contact Form 7’s own hooks are untouched — wpcf7_before_send_mail, wpcf7_mail_components and the rest fire exactly as they always did. These are the ones this plugin adds.
A submission passes through the first four in this order: whether to store it, what to store, where to announce it, and what it became.
apply_filters( 'deferforms_store_submission', $store, $contact_form, $status )

Return false to keep an entry out of the table entirely. The mail is still sent; nothing is written. $status is either ‘submitted’ or ‘spam’.
apply_filters( 'deferforms_submission_data', $data, $contact_form, $status )

The fields on their way into the table. Redact a value, drop a field, or add one of your own. Keys beginning with an underscore are the plugin’s own bookkeeping and are never shown as answers.
do_action( 'deferforms_notify', $entry )

One submission, described once, for sending anywhere the Notifications screen does not already reach. $entry carries entry_id, form_id, title, when, at (ISO 8601), fields and link. Submitted entries only — spam never fires this.
do_action( 'deferforms_submission_stored', $id, $data, $contact_form, $status )

The entry exists and is complete: uploads are kept and $id can be linked to. Spam fires too, with $status saying so. This is where somebody else’s code runs, so it is last.
apply_filters( 'deferforms_capability', 'manage_options' )

The capability the admin screens and the REST routes require.
apply_filters( 'deferforms_attachment_limit', $bytes )

The ceiling on kept uploads across the site. Past it, submissions and their mail arrive as normal but files are no longer copied to the server.
do_action( 'deferforms_submissions_deleted', $rows )

Entries that have just been removed, with their data, so anything mirroring them elsewhere can keep up.
External services
This plugin can forward a submission to a chat service, or to an address of your own. All four destinations are off by default: nothing is sent until you enter your own credentials under Submissions → Notifications and switch that destination on.
When a destination is switched on, each submission is posted to it at the moment the form is submitted. The message contains the form’s title, the time of the submission, every field name and the value the visitor entered, and a link back to the entry in your WordPress admin (which includes your site’s address). Submissions caught as spam are never sent. The “Send a test message” button on the Notifications screen posts one message containing no visitor data.
Telegram — messages are sent to the Telegram Bot API at https://api.telegram.org, using the bot token and chat ID you supply.
Terms of Service: https://telegram.org/tos — Privacy Policy: https://telegram.org/privacy
Slack — messages are sent to the Slack incoming webhook URL you supply, at https://hooks.slack.com.
Terms of Service: https://slack.com/terms-of-service — Privacy Policy: https://slack.com/trust/privacy/privacy-policy
Discord — messages are sent to the Discord webhook URL you supply, at https://discord.com.
Terms of Service: https://discord.com/terms — Privacy Policy: https://discord.com/privacy
Webhook — this one has no fixed service behind it. The submission is posted, as JSON, to whatever address you enter in the Webhook tab, and to no other. Nothing is sent anywhere until you enter one and switch it on, and the plugin neither chooses that address nor contacts it for any other reason. Whose service it belongs to, and what their terms and privacy policy are, is therefore yours to decide before you paste it in — commonly it is an automation service such as Zapier, Make or n8n, or a server of your own.
Source code
The admin screens are React, compiled with Vite into build/. The unminified source of every one of those files ships with the plugin, in ui/, alongside the build configuration (package.json, vite.config.js, tailwind.config.js, postcss.config.js). Run npm install && npm run build in the plugin folder to rebuild build/ from it.
The third-party library bundled under assets/vendor/flatpickr/ is flatpickr, MIT licensed.

延伸相關外掛

文章
Filter
Mastodon