文档
如何启用插件?
将此压缩包安装到您的 WordPress 网站上。Gravity Forms 必须已启用。.
第一步: 安装
登录 WordPress,然后转到“插件”→“添加插件”→“上传插件”。安装 zip 文件并激活它。.
第二步: 设置
前往 地理围栏 → 设置, , 或者 表单 → 设置 → 地理围栏. 同一屏幕。.
密钥为可选。如果您仅使用邮政编码,请跳过此步骤。.
- Google API 密钥 – 需要用于在地图上绘制区域。启用 Maps JavaScript API,并将密钥限制为您的网站。邮政编码区域不需要密钥。如果您已经使用 Gravity Forms 地址自动补全, 我们可以暂时使用这个密钥,直到您在这里输入一个密钥为止。.
- 查找坐标 和 地理编码 API 密钥 仅当您希望我们根据您输入的地址在地图上绘制区域时才需要这样做。此密钥必须与上述密钥不同,且必须启用地理编码 API,并且不得设置 HTTP 引用限制。请改为按 IP 地址进行限制。邮政编码区域永远不会使用此功能。.
步骤 3: 创建您的区域
前往 地理围栏 → 地理围栏, , 或者 表单 → 地理围栏. 添加一个,为其命名,选择邮政编码或地图形状,然后设置 命令. 将较小的区域放在较大的区域之上。.
第四步: 打开表单
打开表格,然后 设置 → 地理围栏.
- 打开 启用地理围栏.
- 请选择适用的领域。.
- 选择 地址字段 (地址字段或单行文本字段)。.
- 选择 阻止提交 或 发出警告,但允许提交.
- 改变 超出区域限制消息 如果您愿意的话。默认选项是“抱歉,我们目前不为该地址提供服务。”
- 可选:设置 商店匹配区域 写入隐藏或单行文本字段。该字段将用于接收通知和条件逻辑。.
保存更改。.
第五步: 价格(仅限您通过此表格销售产品时填写)
在同一表格中,打开 设置 → 地理围栏定价. 首先保存“地理围栏”选项卡,以便此处显示您的区域。对于每个设定了固定价格的产品,请选择该产品是在表单中的所有区域销售还是仅在部分区域销售,并在非基准价格处输入不同的价格。 当地址与地理围栏不匹配时, , 选择 阻止订单 (默认值)或 收费基准价格.
步骤 6: 通知
打开 设置 → 通知. 每个区域添加一条通知,并根据区域字段设置条件逻辑。如果该字段为“小石城”,则发送至 littlerock@…
就这样。对其他需要的表格重复步骤 4。.
功能详情
邮政编码区域
请粘贴邮政编码(ZIP),每行一个,或用逗号分隔。空行将被忽略。以……开头的行 # 这是写给自己的便条。.
- 精确的 –
90210与该代码匹配。. - 以……开始 –
606*匹配任何以“.”开头的代码606. - 范围 –
10001-10005匹配该范围内的所有数字,包括两端的数字。两端数字的位数必须相同。.
大小写无关紧要。空格和连字符在完全匹配和“以……开头”的模式中会被忽略。 90210-1234 比赛 90210, , 和 SW1A 1AA 比赛 SW1A1AA. 范围是在清理之前读取的,因此带连字符的范围永远不会被视为带连字符的邮政编码。.
系统会将邮政区域与用户提交的地址进行核对,但不会调用地图API。.
地图上绘制的区域
编辑地理围栏时,请在谷歌地图上绘制区域。这些区域与地图上的某个点匹配,而不仅仅是邮政编码。.
这一点源于 Gravity Forms 地址自动补全 如果它位于同一地址字段中,或者如果您启用了查找功能,则来自查找结果。 查找坐标 并添加了地理编码 API 密钥。您无需使用地址自动完成功能。.
规则:先到者获胜。
如果表单包含多个区域,我们会按照“表单设置”→“地理围栏”中显示的顺序进行测试。第一个匹配的区域即为最终区域。先匹配较小的区域,以免被范围较大的区域覆盖。当两个区域重叠时,价格的确定也遵循同样的顺序。.
每个表单上的设置
每个表单都有自己的地理围栏选项卡。启用之前,所有功能都不会运行。 启用地理围栏 就该形式而言。.
您可以选择区域、地址字段、是否阻止或警告、超出区域的消息(纯文本,显示在地址旁边),以及用于存储区域名称的可选字段。.
保存区域名称,然后路由电子邮件
商店匹配区域 将区域标题写入隐藏字段或单行文本字段。通常选择隐藏字段。不提供数字字段,因为该值是名称,而不是数字。.
如果它们位于某个区域,则该字段包含该区域的名称(例如)。 Little Rock如果它们不在您选择的任何区域内,则该字段为空。针对该字段设置条件逻辑,以显示或隐藏表单的某些部分,并为每个区域创建一个通知。.
Gravity Forms 会像读取其他字段一样读取该字段,因此它自己的合并标签也可以在通知中正常工作,与……一起显示。 {pb_geo:*} 标签如下。.
实时检查和提交检查
用户输入时进行的检查是为了方便他们。它会更新区域字段、警告信息和价格。.
用户提交后,我们会再次核对表单中保存的地址。我们不信任浏览器发送的地址。第二次核对后,我们会阻止用户并发出警告。.
邮政区域始终根据提交的地址进行核对。地图上绘制的区域也以同样的方式进行核对。 查找坐标 已开启。如果地图点仅来自浏览器(地址自动补全功能,且未启用查找功能),则其他人可以更改它。如果需要明确的边界,请添加邮政区域或启用查找功能。.
当我们无法放置地址时
如果该区域需要地址所不具备的信息(只有地图上标出的区域,没有地图上的具体位置),或者查找失败,我们会允许提交。该条目会被记录为“未检查”,而不是“外部”。.
销售产品的表单是例外情况。在这些表单中,, 当地址与地理围栏不匹配时 系统会做出决定,并且默认情况下设置为阻止,因此我们无法下单的地址在您更改该设置之前无法下单。.
无论条目位于所有区域之外,还是我们无法检查,其“内部”值都为“否”。原因可以区分这两种情况。如果我们从未检查过该条目,“内部”留空,因此看起来不像是一个确定的“否”。.
不同区域价格不同
表单设置 → 地理围栏定价功能适用于 Gravity Forms 中已设置价格的产品字段(包括单个产品和隐藏产品)。它不会更改下拉产品、计算价格或客户手动输入价格的字段。.
产品栏中的价格为基础价格。对于您选择的每个产品:
- 此表单上的每个地理围栏均有售, , 或者
- 仅在指定地理围栏内销售
然后添加一个 价格优先权 对于收取其他费用的区域,价格保持不变。未设置价格覆盖的区域则保持基本价格。如果某个区域不提供该产品,则该产品将不计入总价,并且如果尝试提交该产品,则会被拒绝。要将其从表单中隐藏,请将条件逻辑指向已保存的区域字段。.
当地址与地理围栏不匹配时 (在所有区域之外,否则我们无法放置)您可以 阻止订单 或 收费基准价格. 默认设置为“阻止”,无论您在地理围栏选项卡中选择“阻止”还是“警告”,都会应用此设置。.
随着地址的更改,价格和表单总计也会更新。实际收取的价格会保存在条目中,因此即使您更改了价格,旧订单仍会显示客户支付的金额。. 测试地址 在同一屏幕上,将输入的地址与您上次保存的设置进行比对。.
条目、标签以及谁可以看到什么
地理围栏 → 条目 列出分配给该用户的区域内,所有使用地理围栏的表单中的所有提交内容。您可以按区域和标签进行筛选。打开条目即可查看其来源、所订购的商品及价格,以及用户输入的内容。.
在“地理围栏”→“设置”→下设置一次标签列表 入口标签 (每行一个标签)。用户在登录界面应用这些标签,因此相同的词语适用于所有区域。.
用户屏幕上会显示两个角色:
- 地理围栏管理器 – 设置分配给他们的区域以及价格(包括 地理围栏 → 定价, (无需访问 Gravity Forms)。.
- 地理围栏入口查看器 – 阅读、标记和记录分配给他们的区域中的条目。.
安排人员 已分配用户 编辑区域时会显示一个框。Google 密钥保留在网站管理员处。.
一个实例
五个邮政区域。两种服务在所有五个区域均有提供,价格各异。第三种服务仅在其中三个区域提供,价格也不同。客户可从匹配区域提供的服务组合中任选其一,但您所在区域未覆盖的地址无法下单。.
表单中保存了区域名称。当该字段值为“北小石城”时,会触发一条通知。当该字段值为“莱克县”时,会触发另一条通知。.
合并标签
这些字段会提取条目中保存的值。它们可用于通知、确认以及任何其他 Gravity Forms 合并标签字段。.
{pb_geo:fence_title} – 区域名称(与“存储匹配区域”中显示的文本相同)。如果没有匹配的区域,则为空。.
{pb_geo:fence_id} – 区域 ID。如果没有匹配的区域,则为空。.
{pb_geo:inside} – 是或否。如果我们从未检查过该条目,则为空,因此它读起来不像是一个自信的“外部”。”
{pb_geo:reason} 我们做出这个决定的原因:
- 在地理围栏内
- 每个地理围栏之外
- 无法核实——该地址没有匹配的邮政编码或坐标。
- 无法检查——此表单未选择任何可用的地理围栏
- 已拒绝——提交的地址格式不符合此插件的读取要求。
常见问题解答
我需要 Google API 密钥吗?
仅用于在地图上绘制区域或查找输入的地址。邮政编码区域无需按键,也不会调用 Google 服务。“地图”键供编辑器使用。“地理编码”键仅在启用“查找坐标”功能时使用。.
哪些邮政编码格式有效?
确切的代码,前缀如 606*, 以及类似这样的数字范围 10001-10005. 每行一个图案,或用逗号分隔。请参阅“功能详情”下的邮政编码区域。.
如果匹配的区域不止一个呢?
我们按顺序使用第一个选项。该区域的价格适用。.
我可以在不屏蔽对方的情况下发出警告吗?
是的,请选择 发出警告,但允许提交. 您的留言仍会显示在地址旁边,并且当地址和地区名称匹配时,地区名称仍会自动填充,因此电子邮件和隐藏字段仍然有效。但有一个例外:在销售产品的表单中,, 当地址与地理围栏不匹配时 默认情况下设置为阻止,该设置决定了未匹配的地址是否可以下单。.
如何针对不同地区发送不同的邮件?
将区域名称保存在隐藏字段或文本字段中,然后根据该字段的条件逻辑为每个区域添加通知。.
在他们打字时进行检查是否足以阻止某人?
不。那项审核是针对填写表格的人的。是否阻止申请,我们会在他们提交后决定。.
如果你无法确定地址在哪里怎么办?
如果表格上没有列出产品,我们会放行,并将该条目标记为“未勾选”而不是“未提交”。如果表格上列出了销售产品的信息,我们会…… 当地址与地理围栏不匹配时 设置决定了操作结果,默认情况下会阻止该操作。无论如何,条目中的原因会告诉你发生了什么。.
它适用于多页表单吗?
是的。我们只检查他们提交的页面,所以第一页的“下一步”操作不会因为后面页面上的地址或产品而失败。.
哪些产品会因地区不同而定价不同?
价格固定的产品字段(包括单个产品和隐藏产品)。不包括下拉菜单产品、计算价格或“自定义价格”字段。.
我需要为 Gravity Forms 启用地址自动填充功能吗?
不。如果两个插件都指向同一个地址字段,我们会重复使用它们已经选择的位置,因此地图绘制区域不需要二次查找。邮政区域则完全不需要二次查找。地图绘制区域可以使用“查找坐标”功能。.
我可以在多个表格中使用它吗?
是的。区域可以重复使用。每个表单都有自己的开关、区域列表、地址字段、阻止或警告选项、消息、已保存区域字段和价格。.
警告信息在缓存页面上消失了。表单是否仍然处于选中状态?
是的。如果页面在缓存中停留超过一天,实时警告可能会停止。我们仍然会在用户提交时检查地址,并且如果您设置了阻止,我们仍然会进行阻止。如果您的缓存保留页面超过一天,请将受地理围栏保护的表单页面排除在缓存之外,或者缩短它们在缓存中的停留时间。.