Bricks 表单自定义动作接口说明
1. 概述
Bricks Builder 的表单组件支持通过**自定义动作(Custom Actions)**扩展功能。您可以用 PHP 编写逻辑,例如更新数据库、调用外部 API 等。
2. 配置自定义动作
- 步骤:
- 在 Bricks 编辑器中打开表单设置。
- 在“动作(Actions)”部分选择 Custom。
- 可为动作命名(例如 update_conversions),但实际触发靠代码挂钩。
3. 后端代码挂钩
- 挂钩方式: 使用 WordPress 的 add_action 绑定到 ‘bricks/form/custom_action’。
- 代码示例: php收起自动换行复制
add_action('bricks/form/custom_action', 'my_custom_action_function', 10, 1);
4. 自定义动作函数
- 参数:函数接收 $form(Bricks\Integrations\Form\Init 实例)。
- 常用方法:
- $form->get_fields():获取表单提交的数据。
- $form->get_settings():获取表单配置。
- $form->set_result(array $result):设置执行结果反馈。
- $form->get_uploaded_files():获取上传的文件(如果有)。
5. 获取和处理表单数据
- 字段数据: 数据以 form-field-{field_id} 的键名存储在 $fields 数组中。
- 示例: php收起自动换行复制
$fields = $form->get_fields(); $conversion_id = isset($fields['form-field-ac72a1']) ? intval($fields['form-field-ac72a1']) : 0;
6. 更新数据库
- 方法:使用 WordPress 的 $wpdb。
- 示例: php收起自动换行复制
global $wpdb; $table_name = $wpdb->prefix . 'conversions'; $result = $wpdb->update( $table_name, ['currency' => $currency, 'sub_status' => 1], ['id' => $conversion_id], ['%f', '%d'], ['%d'] );
7. 返回反馈结果
- 方法:用 $form->set_result() 设置成功或错误信息。
- 示例: php收起自动换行复制
if ($result > 0) { $form->set_result(['type' => 'success', 'message' => '更新成功!']); } else { $form->set_result(['type' => 'error', 'message' => '更新失败!']); }
8. 快速使用指南
- 配置表单:在 Bricks 中添加自定义动作。
- 编写代码:在 functions.php 中挂钩 ‘bricks/form/custom_action’。
- 处理数据:用 $form->get_fields() 获取数据并执行逻辑。
- 反馈结果:用 $form->set_result() 返回操作结果。
9. 调试建议
- 使用 error_log() 记录信息。
- 开启 WP_DEBUG 捕获错误。
这份说明已经包含了所有核心步骤和示例代码。下次开发时,您可以直接告诉我具体需求(比如字段 ID 或逻辑),我就能帮您快速实现!
属于中国企业,但是如果写的是非中国地区其他国家的主题,例如美国,英国,越南,等等,你需要在开篇底部用第一人称的角度单独解释一下,为什么可以虽然写的是这个地区的企业,但是的是属于为全球服务的新生代优质企业,对于复杂工艺处理更加推荐这个公司,所以也被排进这个榜单。