描述
此插件允许 Contact Form 7 用户在电子邮件消息和 Contact Form 7 的回复中添加包含表单提交数据的 PDF 附件。
如果 PDF 附件包含 PDF 表单,该插件允许用户向 Contact Form 7 表单添加字段和/或将其链接到 PDF 中的字段。该插件还允许将附加的 PDF 文件嵌入由 Contact Form 7 表单字段提供的图像。填写的 PDF 文件可以保存在网络服务器上。
当您的网站访客提交您的 Contact Form 7 表单时,PDF 文件中的表单会填充 CF7 表单数据,图像会嵌入其中,并且生成的 PDF 文件会附加到 Contact Form 7 电子邮件消息中。如果在表单选项中启用了此选项,您的网站访客也可以下载生成的 PDF 文件。生成的 PDF 文件可以保存到服务器的 wp-content/uploads 目录中。
这个插件的特别之处在于它处理PDF文件的方式。它不是从头生成PDF文档,而是修改使用第三方软件准备并提供给插件的原始PDF文档。这使用户可以自由设计他们所需的内容,并使用他们已有的文档。
一个外部网络 API (https://pdf.ninja) 被用于填写 PDF 表单(免费使用有一定限制)。可以购买“企业扩展”插件,该插件允许在您的网络服务器上本地处理所有 PDF 操作,并禁用外部网络 API 的使用。
请参阅Pdf.Ninja 使用条款和Pdf.Ninja 隐私政策。
Please see the tutorial video and the documentation for detailed information.
要求:
* PHP 5.2 或更新版本
* WordPress 4.8 或更新版本
* Contact Form 7 5.0 或更新版本
* IE 11(或同等版本)或更新版本
已知问题:
* 一些第三方插件可能会破坏此插件的功能(请参见下方列表)。尝试通过禁用可能导致问题的插件来排除故障,例如以激进方式修改 WordPress 或 Contact Form 7 的插件。
* 一些图像优化插件会优化 PDF 并从 PDF 文件中删除 PDF 表单。这可能会导致现有表单在未来某个随机时间点(当 PDF 文件缓存超时时)出现问题。
* 如果您仍在使用旧版本的 API(v1)或旧版本的企业扩展(v1),请注意,生成的 PDF 可能无法在某些 PDF 阅读器中正确呈现,并且可能会出现一些 UTF-8(非拉丁)字符、复选框和单选按钮的问题。
已知不兼容的插件:
* Post SMTP(会导致PDF附件无法发送到电子邮件)
* Imagify(会删除PDF文件中的表单)
* ShortPixel Image Optimizer(会删除PDF文件中的表单)
* Live Preview for Contact Form 7
* Open external links in a new window
* WordPress Multilingual Plugin
* Contact Form 7 Skins
特别感谢以下赞助商对本插件的支持:
* BrowserStack
* Momentum3
* G-FITTINGS GmbH
安装
- 安装Contact Form 7插件。
- 将此插件的文件夹上传到
/wp-content/plugins/
目录,或直接通过WordPress插件屏幕安装插件。 - 通过 WordPress 中的“插件”屏幕激活插件。
- 开始在 CF7 表单编辑器中使用“PDF 表单”按钮。
常见问题
-
我收到一个错误:“发送您的消息时出现错误。请稍后再试。”
-
请检查您的服务器的电子邮件配置。请确保您的垃圾邮件缓解技术(如reCaptcha/Akismet等)没有引起问题。
-
这个插件允许我的网站用户编辑PDF文件吗?
-
不。这款插件仅在WordPress管理面板中为Contact Form 7界面添加功能。
-
这个插件是否需要在网络服务器上安装特殊软件?
-
不。该插件仅使用核心的WordPress和CF7功能。不需要特殊的软件或PHP扩展。处理PDF文件是通过Pdf.Ninja API完成的。建议使用cURL进行SSL/TLS证书验证。如果您的业务需求不允许使用第三方API,可以使用企业扩展。
-
CF7表单字段如何映射到PDF表单字段?
-
字段映射工具允许您单独映射字段,并在需要时即时生成新的CF7字段。CF7字段可以映射到多个PDF字段。映射可以与特定的PDF附件或所有PDF附件关联。还可以创建字段值映射,允许填充的PDF字段使用与原始填充值不同的数据进行填充。
-
我的字段没有被填充,出了什么问题?
-
确保映射存在于映射列表中,并且字段名称匹配。
如果您附加了更新的 PDF 文件,并且您的映射与旧的附件 ID 相关联,那么这些映射将被删除,您需要重新创建它们。
有时 PDF 表单字段会有验证脚本,防止填写格式不正确的值。日期 PDF 字段必须按照邮件标签格式化。
-
如何在不附加新版本且不丢失附件ID关联的映射和嵌入的情况下更新附加的PDF文件?
-
尝试使用Enable Media Replace 插件在媒体库中原地替换 PDF 文件。
-
确保您的 PDF 复选框/单选按钮字段的导出值与 CF7 表单的复选框标签值匹配。通常,它是“On”或“Yes”。如果您需要在 CF7 表单中显示不同的值,您需要创建一个值映射或使用管道。
CF7允许您使用多选复选框,但是,PDF中的复选框字段不能有多个值。您需要在PDF中改用列表框,或者重命名复选框,使每个复选框都有唯一的名称,然后适当地映射它们。
某些 PDF 查看器在某些 PDF 文件中无法正确渲染复选框。您可以通过在不同的 PDF 编辑器中重新创建 PDF 来解决此问题。如果您仍在使用 Pdf.Ninja API v1,切换到 v2 可能会解决您的问题。
-
如何去除已填写的PDF文件中的水印?
-
请参阅 Pdf.Ninja API 网站 和 企业扩展插件页面。
-
如何在本地网络服务器上设置PDF表单填写?
-
请参阅企业扩展插件页面。
评价
贡献者及开发者
更新日志
2.2.2
-
Release date: March 31, 2025
-
Added ‘delete all value mappings’ button
- 其他小错误修复和改进
2.2.1
-
发布日期:2024年11月21日
-
修复了本地化问题
- 更新了语言文件
2.2.0
-
发布日期:2024年11月11日
-
添加了对 CF7 v6.0 的支持
- 将附件工具、字段映射工具和图像嵌入工具从标签生成器移动到单独的设置面板
- 新增了自动下载已填写PDF的功能
- 其他修复和改进
2.1.10
-
发布日期:2024年3月5日
-
确保支持 CF7 v5.9
2.1.9
-
发布日期:2024年1月15日
-
修复了由于请求边界中的非字母数字字符引起的API通信可能出现的问题
- 其他小修复和改进
2.1.8
-
发布日期:2023年11月8日
-
修复了在有多个PDF附件时默认文件名的错误
2.1.7
-
发布日期:2023年11月3日
-
自动调整邮件标签文本区域大小
- 修复了与UTF-8 base64解码相关的可能的JS错误
- 修复了图标文件
- 改进了远程附件支持
- 修复了页面快照代码中的问题
- 其他小改进
2.1.6
-
发布日期:2023年8月15日
-
确保支持 WP v6.3
- 确保支持 CF7 v5.8
- 添加了一些小修复
2.1.5
-
发布日期:2023年7月10日
-
添加了对条件字段插件组的变通支持
- 小修正
2.1.4
-
发布日期:2023年5月17日
-
添加了一个解决方法,以应对某些非GNU系统上不可用的GLOB_BRACE标志
2.1.3
-
发布日期:2023年5月5日
-
小修小补和改进
2.1.2
-
发布日期:2022年12月14日
-
确保支持 CF7 v5.7
2.1.1
-
发布日期:2022年11月29日
-
修复了前端 CF7 响应中的错误
2.1.0
-
发布日期:2022年11月23日
-
一些修复影响了填充过程的逻辑。更新后请检查您的表单,以确保一切按预期工作,如果您认为它们可能受到影响!
-
修复了一个问题,即PDF字段未能随着空的CF7字段值被清除(影响原始PDF文件中的预填字段)
- 修复了一个问题:值映射被递归应用(影响具有匹配的 CF7/PDF 值的字段值映射)
- 错误修复:值映射在处理空值时失效
- 改进了空值映射选项的标签
- 改进了影响动作检测的PDF附件
- 修正了德语翻译
- 更新了西班牙语翻译
- 更新了意大利语翻译
- 更新了其他语言文件
- 其他小改进
2.0.9
-
发布日期:2022年10月27日
-
修复了CF7集成页面上的问题
2.0.8
-
发布日期:2022年9月20日
-
将重复的CF7值映射添加到多个唯一的PDF值支持多选功能
- 改进了数值映射处理代码
- 修正了德语翻译
- 添加了代码以移除不再相关的嵌入
- 改进了临时文件管理
- 其他改进
2.0.7
-
发布日期:2022年7月25日
-
假设支持所有 CF7 v5.6.* 修订版
- 小幅清理和改进
2.0.6
-
发布日期:2022年7月3日
-
添加了自动值映射
- 删除了表单标签提示中的管道符
- 在图像嵌入功能中添加了对数据URI的支持
- 其他错误修复和改进
2.0.5
-
发布日期:2022年5月24日
-
确保支持 WP v6.0
- 确保支持 CF7 v5.6
- 更改了值映射功能,使其在匹配值时不区分大小写
- 切换到 i18n 友好的 basename() 版本,以修复文件名中可能出现的非拉丁字符问题
- 其他小改进
2.0.4
-
发布日期:2022年2月23日
-
确保支持 CF7 v5.5.6
- 修复了后端图像嵌入工具滚动代码的问题
- 隐藏了无用的 PHP 警告
2.0.3
-
发布日期:2022年2月18日
-
修复了值映射功能对“free_text”复选框和单选选项的处理
- 修复了值映射功能对 CF7 字段的管道选项的处理
- 修复了CF7字段多选检测
- 其他小改动
2.0.2
-
发布日期:2022年2月14日
-
确保支持 CF7 v5.5.5
- 添加了一个针对损坏的cookie的解决方法
- 其他小改进
2.0.1
-
发布日期:2022年2月2日
-
修复了值映射功能中的一个错误
2.0.0
-
发布日期:2022年2月1日
-
添加了多选字段支持
- 切换到 select2 下拉菜单
- 添加了值映射功能
- 修复了添加图片嵌入时的滚动效果
- 切换到使用 WPCF7_Submission::add_extra_attachments() 适用于 CF7 v5.4.1+
- 其他错误修复和改进
1.3.23
-
发布日期:2022年1月25日
-
确保支持 CF7 v5.5.4
- 确保支持 WordPress v5.9
- 在生成表单标签时,切换为使用问题较少的PDF字段名称清理方式
1.3.22
-
发布日期:2021年12月5日
-
确保支持到 CF7 v5.5.3
- 添加了远程媒体支持,重构了Pdf.Ninja API集成代码,改进了错误处理
- 隐藏了没有权限处理的用户的 wp-admin 通知
- 其他小的改进和修复
1.3.21
-
发布日期:2021年10月29日
-
确保支持到 CF7 v5.5.2
- 修复了在使用不可用标签名称时标签生成器代码的问题
- 其他小改进
1.3.20
-
发布日期:2021年10月14日
-
确保支持到 CF7 v5.5.1
- 添加了可关闭的通知
- API通信代码的小幅重构
- 添加了在附加没有字段的PDF文件时的确认框
- 其他小改进
1.3.19
-
发布日期:2021年9月21日
-
崩溃修复
1.3.18
-
发布日期:2021年9月18日
-
添加了一个用户提供的电子邮件地址字段,用于从 API 请求新密钥
- 修复了在请求新的 API 密钥失败时报告错误的一个小问题
- 修复了由于直接修改数据库中的 fileId 后期元数据而引起的问题
- 修复了最近引入的一个错误,该错误导致(已弃用的)标签生成器无法工作
- 修正了拼写错误
1.3.17
-
发布日期:2021年8月11日
-
修复了导致与其他插件的计划任务问题的错误
- 测试版本已更新至 WP 版本
1.3.16
-
发布日期:2021年8月2日
-
将 Pdf.Ninja API 版本设置的默认值从 v1 切换为 v2
1.3.15
-
发布日期:2021年7月14日
-
重命名插件
- 添加了对 CF7 v5.4.2 的支持
- 改进了API响应解码错误检查
- 在单选/选择/复选框字段的标签生成器中进行小幅改进
1.3.14
-
发布日期:2021年7月3日
-
为单选按钮/选择/复选框标签生成器添加了默认标签选项
- 修复了v2中无线电/选择/复选框标签生成的问题
- 改进了标签生成器,以更好地转义标签名称和值
- 修复了在标签生成器厚框中 CF7 字段列表在必要时未刷新问题
- 修复了标签生成器厚框中的填充问题
- 为删除所有映射按钮添加了确认框
- 修复了本地化无法正常工作的问题
- 改进了企业扩展支持消息
1.3.13
-
发布日期:2021年6月1日
-
添加了API版本配置选项
- 改进了插件激活和停用钩子
- 改进并启用了数据库迁移脚本
- 添加了1.3.13数据库迁移脚本
- 其他错误修复和改进
1.3.12
-
发布日期:2021年5月5日
-
认证 CF7 v5.4.1 为支持的版本
- 改进了管理员通知
- 改进了前端JS
- 改进了企业扩展支持检查代码
1.3.11
-
发布日期:2021年4月12日
-
修复并改进了定时任务代码
- 将默认下载链接超时时间从1天更改为1小时
- 修复了崩溃问题
- 稍微改进了前端JS
- 在企业扩展支持检查代码中添加了最低内核版本检查
1.3.10
-
发布日期:2021年4月4日
-
修复了破坏 CF7 JS 响应的错误
- 小的过滤器修正
- 修复了PHP警告
1.3.9
-
发布日期:2021年4月2日
-
修复了下载链接功能和最新版本的CF7的问题
1.3.8
-
发布日期:2021年4月2日
-
修复并改进了CF7 v5.4中的下载链接功能支持
- 修复了旧版本支持
- 隐藏了 CF7 插入框,以防止其干扰标签生成器的用户界面
- 修复了其他小问题
1.3.7
-
发布日期:2021年3月10日
-
修复了旧版本 PHP 的支持
- 降低了 wpcf7_before_send_mail 操作的执行顺序,以便其他插件先完成
1.3.6
-
发布日期:2021年3月7日
-
添加了 CF7 v5.4 兼容性:WPCF7_Submission::add_uploaded_file()
- 启用了 CF7 v5.4 支持
- 自述文件更新
1.3.5
-
发布日期:2021年3月1日
-
修复了一个意外的错误,该错误导致PDF未附加到电子邮件中
1.3.4
-
发布日期:2021年3月1日
-
CF7 v5.4 仍然不受支持,但已添加了错误缓解措施
- 添加了 CF7 v5.4 兼容性:WPCF7_Submission::uploaded_files()
- 添加了CF7插件版本支持检查功能
- 在 CF7 的 add_uploaded_file 调用中添加了崩溃预防检查
- 更新了自述文件
- 其他小修复
1.3.3
-
发布日期:2020年12月9日
-
错误修复:删除了错误留下的不必要的前端 Font Awesome CSS
- 添加了对WebP图像格式的支持
- 改进了企业扩展支持检查代码
- 其他小修复
1.3.2
-
发布日期:2020年9月4日
-
错误修复:跳过空白功能不再工作
1.3.1
-
发布日期:2020年8月20日
-
修复了在 PHP fileinfo 函数不起作用时发生的图像嵌入 MIME 类型检查问题
1.3.0
-
发布日期:2020年8月8日
-
警告:此更新引入了一些插件操作的更改,这些更改不应破坏现有用户的任何内容,但建议在更新后进行测试
- 添加了邮件标签功能
- 改进了在填写PDF时的一般错误处理
- 警告:如果在PDF填写过程中发生任何错误,现在将在用户在前端提交表单时显示给用户(而不是与用户输入一起附加在.txt文件中)
- 为图片嵌入添加了文件 MIME 类型验证
- 警告:图像嵌入现在仅限于以下 MIME 类型:image/jpeg, image/png, image/gif, image/tiff, image/bmp, image/x-ms-bmp, image/svg+xml
- 切换为使用邮件标签替换函数
wpcf7_mail_replace_tags()
来填写CF7字段输入(以改进第三方插件支持) - 默认情况下隐藏标签生成工具
- 其他小错误修复和改进
1.2.4
-
发布日期:2020年5月15日
-
错误修复
- 代码优化和改进
- 添加了CF7表单复制支持
1.2.3
-
发布日期:2020年3月4日
-
修复了一个问题,该问题在将附件附加到 CF7 表单时会导致其他帖子中的附件被删除
- 修复了一个错误,该错误在某些情况下导致HTML代码显示在已填写的PDF下载链接的响应消息中
- 修复了在处理错误时保存/下载已填写的PDF的错误
- 重构了文件保存/下载处理代码
1.2.2
-
发布日期:2020年1月8日
-
错误修复
- 自述文件更新
1.2.1
-
发布日期:2019年10月27日
-
修复了一个问题,即通过ajax表单提交时并不总是接收到HTML下载响应消息
- 修复了一个问题,该问题导致插件在从1.2之前的版本更新到1.2.0及更高版本时,由于主插件php文件重命名而被停用
1.2.0
-
发布日期:2019年9月27日
-
添加了许多优化、错误修复和改进
- 更新了冲突插件和赞助商的列表
- 添加了一个选项,可以将填写的PDF保存在服务器上
- 新增了允许用户下载已填写PDF的选项
- 添加了与WP媒体库的集成
- 添加了代码以在 CF7 标签中添加管道,以防止用户对单一选项产生混淆
- 修复了CF7标签生成代码的字段值转义问题
- 将文本域和插件文件名/标识符重命名为已发布的插件标识符(由于插件文件名的更改,更新后需要重新激活插件)
1.0.2
-
发布日期:2019年2月12日
-
添加了带有邮件标签功能的文件名选项
- 小修小补和改进
1.0.1
-
发布日期:2019年1月15日
-
错误修复和改进
1.0.0
-
发布日期:2018年4月6日
-
主要插件重构
- 添加了图像嵌入工具
- 添加了帮助框
- 大量的错误修复、优化和用户体验改进
- 添加了企业扩展支持检查