按表单ID联系表单7字段列表?

时间:2014-11-23 11:43:42

标签: php wordpress contact-form contact-form-7

如何通过表单ID将所有“联系表单7”字段作为对象?

有一个功能是谁做到的? 我是否需要获取帖子的内容并使用正则表达式处理它?<​​/ p>

感谢。

2 个答案:

答案 0 :(得分:3)

联系表单7表单只是自定义帖子类型为wpcf7_contact_form的帖子。表单字段保存为html(带有短代码)作为post meta,密钥为_form。要获取此数据,您可以使用get_post_meta()

再次......这实际上不会返回渲染的html字段......只是短代码和其他表单布局。在WPCF7运行do_shortcode()之前,不会呈现实际的表单字段。

答案 1 :(得分:3)

获取联系表单7表单字段的正确方法:

$form_ID     = 1538; # change the 1538 to your CF7 form ID
$ContactForm = WPCF7_ContactForm::get_instance( $form_ID );
$form_fields = $ContactForm->scan_form_tags();
var_dump( $form_fields );

下面的代码也将起作用。

 $fieldsArray   = get_post_meta(1538);  # change the 1538 to your CF7 form ID
 $meta          = $fieldsArray['_form'][0];
 $TagsManager   = WPCF7_FormTagsManager::get_instance();
 $tags          = $TagsManager->scan( $meta );
 $form_fields   = $TagsManager->filter( $tags, $data );
 var_dump( $form_fields );

但这不是首选方式。