将重力表添加到Unyson Builder中

时间:2015-10-30 11:02:12

标签: php arrays wordpress foreach associative-array

我正在向Unyson构建器添加Gravity Forms,但问题是构建器仅检测/添加最后一个表单标题/ id。

以下是代码:


    if ( ! defined( 'FW' ) ) {
        die( 'Forbidden' );
    }

    $options = array(

        'title' => array(
            'type'  => 'select',
        'value' => 'choice-3',
        'attr'  => array( 'class' => 'custom-class', 'data-foo' => 'bar' ),
        'label' => __('Label', 'fw'),
        'desc'  => __('Description', 'fw'),
        'help'  => __('Help tip', 'fw'),
        'choices' => array(),
          ), // title

    ); // $options

    $forms = GFAPI::get_forms();
    foreach ($forms as $form) {
        $form_id = $form['id'];
        $form = GFAPI::get_form( $form_id );
        $form_title = $form['title'];
        $options['title']['choices'] = array(
            $form_id => __($form_title, 'fw'),
            );
    }

我想填充这些选择'包含所有重力形式标题的数组。

谢谢!

1 个答案:

答案 0 :(得分:1)

我明白了。经过多次思考后,我意识到我应该在foreach循环中使用array_push而不是数组。是的,这解决了问题。这是最后的&工作循环:


    foreach ($forms as $form) {
        $form_id = $form['id'];
        $form = GFAPI::get_form( $form_id );
        $form_title = $form['title'];
        $form_title_value = __($form_title, 'fw');
        array_push( $options['title']['choices'],
            $form_id = $form_title_value );
    }

希望这会对某人有所帮助。

array_push()手册:http://php.net/manual/en/function.array-push.php

谢谢!