我如何在 WordPress Formidable Forms 中创建一个新的转发器字段而不将以前的条目值作为默认值?

How can I createa a new repeater field in WordPress Formidable Forms without it getting the previous entry values as default?

我想用多个值填充 Wordpress Formidable 转发器字段。我用自定义代码创建了一个自定义 Wordpress 插件,并使用 https://formidableforms.com/knowledgebase/frm_setup_new_fields_vars/#kb-auto-populate-multiple-rows-in-a-repeater 作为参考。

我的解决方案有效,但有一个问题。我可以毫无问题地创建一个新条目,它显示为一个条目。但是,下一个新条目将作为默认值提供旧条目值。请注意,我仍然可以编辑该新表格并保存新条目。

在这个 Formidable 插件的某处,旧条目被假定为用于默认值的条目。我应该更改什么以始终创建新条目(这样在转发器行中没有不需要的默认值)?

假设 'form_select' 是正确的子表单 ID 是否有问题?或者是否缺少某些东西,例如 'entry_id' 来说明这是一个新条目?

class formidableRepeater

{

public static function populateRepeaterFieldsWithNames($result, $field)
{

    //simplified a bit and removed non-relevant code
    $names = ['jack', 'jill', 'joe'];
    $result['value'] = self::getValueRowsForResult(FormidableFieldKey::PREFILL_REPEATER_NAME, $names, $result['form_select']);

    return result;
}

private static function getValueRowsForResult($fieldKey, $values, $form_select): array
{
    $result = [];

    //simplified a bit and removed non-relevant code
    $valueRows = static::getValueRows($fieldId, $values);

    $result = $valueRows;
    $result['form'] = $form_select;
    $result['row_ids'] = array_keys($valueRows);

    return result;
}

private static function getValueRows($fieldId, $values): array
{
    $result = [];
    $i = 0;

    $finalValues = is_array($values) ? $values : [$values];
    foreach ($finalValues as $value) {
        $result[$i] = static::getValueRow($i, $fieldId, $value);
        $i++;
    }

    return $result;
}

private static function getValueRow(int $rowNumber, $fieldId, $value): array
{
    return [
        $rowNumber => '',
        $fieldId => $value
    ];
}

}

事实证明,这只适用于文本字段。强大的状态(在支持问题中):

Just to clarify, checkboxes and radio buttons works differently. That function is to be used for setting default values in text fields and not radio buttons/dropdown fields/checkbox fields.

如果这些信息写在 link 上,我会节省几个小时。

我在这里找到了 'kind of' 解决方案。如果您希望它起作用,请确保创建一个没有任何值的第一个条目用于单选/复选框/下拉列表。下次创建条目时,默认仍会加载,但它们是空的,不会干扰您的表单!