/** * Generates repeatable text fields * @since 1.0.0 * @param string $field Metabox field * @param mixed $meta Field's meta value * @param string $class Field's class attribute * @param string $type Field Type */ private static function repeat_text_field($meta, $class = '', $type = 'text') { $field = cmb_Meta_Box::$field; self::$meta = $meta; self::$type = $type; // check for default content $default = isset($field['default']) ? array($field['default']) : false; // check for saved data if (!empty($meta)) { $meta = is_array($meta) ? array_filter($meta) : $meta; $meta = !empty($meta) ? $meta : $default; } else { $meta = $default; } self::repeat_table_open($class); $class = $class ? $class . ' widefat' : 'widefat'; if (!empty($meta)) { foreach ((array) $meta as $val) { self::repeat_row(self::text_input($class, $val)); } } else { self::repeat_row(self::text_input($class)); } self::empty_row(self::text_input($class)); self::repeat_table_close(); // reset iterator self::$iterator = 0; }