name = 'file'; $this->label = __( 'File Upload', 'cfs' ); } function html( $field ) { $file_url = $field->value; if ( ctype_digit( $field->value ) ) { if ( wp_attachment_is_image( $field->value ) ) { $file_url = wp_get_attachment_image_src( $field->value ); $file_url = ''; } else { $file_url = wp_get_attachment_url( $field->value ); $filename = substr( $file_url, strrpos( $file_url, '/' ) + 1 ); $file_url = ''. $filename .''; } } // CSS logic for "Add" / "Remove" buttons $css = empty( $field->value ) ? array( '', ' hidden' ) : array( ' hidden', '' ); ?> create_field( array( 'type' => 'select', 'input_name' => "cfs[fields][$key][options][file_type]", 'options' => array( 'choices' => array( 'file' => __( 'Any', 'cfs' ), 'image' => __( 'Image', 'cfs' ), 'audio' => __( 'Audio', 'cfs' ), 'video' => __( 'Video', 'cfs' ) ), 'force_single' => true, ), 'value' => $this->get_option( $field, 'file_type', 'file' ), ) ); ?> create_field( array( 'type' => 'select', 'input_name' => "cfs[fields][$key][options][return_value]", 'options' => array( 'choices' => array( 'url' => __( 'File URL', 'cfs' ), 'id' => __( 'Attachment ID', 'cfs' ) ), 'force_single' => true, ), 'value' => $this->get_option( $field, 'return_value', 'url' ), ) ); ?> create_field( array( 'type' => 'true_false', 'input_name' => "cfs[fields][$key][options][required]", 'input_class' => 'true_false', 'value' => $this->get_option( $field, 'required' ), 'options' => array( 'message' => __( 'This is a required field', 'cfs' ) ), ) ); ?> get_option( $field, 'return_value', 'url' ); return ( 'id' == $return_value ) ? (int) $value : wp_get_attachment_url( $value ); } return $value; } }