WordPress:使用 Gravity Forms API 添加表单

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

我想在激活主题后在 Gravity Forms 中添加一个表单。 为此,我尝试使用他们的API

不幸的是,文档不是很有帮助。

表格的创建到此为止。但是表单本身在后端有 JavaScript 错误。其他所有手动创建的表格都可以正常工作。

我想念什么吗?

这是我的代码:

// Function to check for existing forms
function form_exists_by_title($form_title) {
  $forms = GFAPI::get_forms();

  foreach ($forms as $form) {
    if ($form['title'] === $form_title) {
      return true;
    }
  }

  return false;
}

// Adding the form
function create_gravity_form_on_theme_activation() {
  if (class_exists('GFAPI')) {

    $form_title = 'Form';

    if (!form_exists_by_title($form_title)) {

      // Erstelle das Formular
      $form = array(
        'title' => $form_title,
        'description' => '',
        'fields' => array(
          array(
            'label' => 'Title',
            'type' => 'text',
            'isRequired' => true,
            'placeholder' => 'Please add a title',
            'size' => 'large',
          ),
          array(
            'label' => 'Content',
            'type' => 'textarea',
            'isRequired' => true,
            'placeholder' => 'Please add content',
            'rows' => 5,
            'maxLength' => 500,
          ),
        )
      );

      $form_id = GFAPI::add_form($form);
    }
  }
}

add_action('after_setup_theme', 'create_gravity_form_on_theme_activation');

这些是控制台中的错误:

caught TypeError: Cannot read properties of undefined (reading 'text')
    at InitializeForm (form_editor.min.js?ver=2.7.6:1:12590)
    at InitializeEditor (form_editor.min.js?ver=2.7.6:1:1597)
    at HTMLDocument.<anonymous> (form_editor.min.js?ver=2.7.6:1:92968)
    at e (load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,wp-polyfill-inert,regenerator-runtime,wp-polyfill,wp-hooks&ver=6.2.1:2:30158)
    at t (load-scripts.php?c=0&load%5Bchunk_0%5D=jquery-core,jquery-migrate,utils,wp-polyfill-inert,regenerator-runtime,wp-polyfill,wp-hooks&ver=6.2.1:2:30460)
I

和:

caught (in promise) TypeError: Cannot read properties of undefined (reading 'replace')
    at E (scripts-admin.merge-tags.3d49bb55c3c3ab318245.min.js:1:1843)
    at z (scripts-admin.merge-tags.3d49bb55c3c3ab318245.min.js:1:2902)
    at D (scripts-admin.merge-tags.3d49bb55c3c3ab318245.min.js:1:4358)
    at R (scripts-admin.merge-tags.3d49bb55c3c3ab318245.min.js:1:6056)
    at scripts-admin.merge-tags.3d49bb55c3c3ab318245.min.js:1:7606
    at Array.forEach (<anonymous>)
    at Z (scripts-admin.merge-tags.3d49bb55c3c3ab318245.min.js:1:7562)
    at J (scripts-admin.merge-tags.3d49bb55c3c3ab318245.min.js:1:8151)
    at Module.K (scripts-admin.merge-tags.3d49bb55c3c3ab318245.min.js:1:8169)
    at scripts-admin.min.js?ver=caa4ee761009c701fc6e3631d3604424:1:21367
E
javascript php wordpress gravity-forms-plugin gravityforms
© www.soinside.com 2019 - 2024. All rights reserved.