重力形式:动作挂钩 gform_field_standard_settings

问题描述 投票:0回答:1

我是重力形式的新手。

https://docs.gravityforms.com/gform_field_standard_settings/,可以找到一个示例,用于在字段的“常规”选项卡上为“单行文本”字段创建新的标准设置。 我尝试改变它,效果很好。

但是:我尝试为其他提供的字段创建这样的自定义设置,例如“段落文本”或“数字”等,但失败了。

并且:我想知道,上面的示例代码中没有任何迹象表明它特别适用“单行文本” - 但它确实适用,但我不明白为什么以及如何。

gravity-forms-plugin gravityforms
1个回答
0
投票

我想我已经弄清楚这里发生了什么。这与我在尝试进行全局自定义字段设置时遇到的问题相同;通常我只会将我所做的自定义字段设置应用于特定的自定义字段。

要创建完全自定义的字段,您可以声明一个新类并扩展

GF_Field
。在声明自定义字段支持的字段设置时,您只需覆盖
get_form_editor_field_settings
方法即可。如果我要进行新的自定义字段设置;我还将在此处添加它的名称(图 1)。

根据我的理解,侧边栏设置只有在上述方法内部才会出现。我深入研究了核心,发现上述方法的结果数组被转换为 JavaScript 对象。当您单击管理区域中的字段时,会查找名为

fieldSettings
的 JavaScript 对象(图 2)。

我没有注意到的是,GravityForms 提供的示例中的 JavaScript 实际上在加载时修改了这个 fieldSettings 数组;扩展对象以允许显示该字段(图 3)。我相信自定义字段的 JavaScript 方法只是加载当前表单状态,但实际上它还做了更多事情。我想这可能是示例中更多指出的事情。

希望对您有所帮助,如果您需要更多帮助,请告诉我!

Figure 1 - A new custom field that overwrites get_form_editor_field_settings (图 1 - 覆盖 get_form_editor_field_settings 的新自定义字段)

Figure 2 - The fieldSettings object in Google Chrome inspector (图 2 - Google Chrome 检查器中的 fieldSettings 对象)

Figure 3 - The JavaScript that extends the fieldSettings (图 3 - 扩展 fieldSettings 的 JavaScript)

© www.soinside.com 2019 - 2024. All rights reserved.