• Resolved chlewis85

    (@chlewis85)


    When I try to upload an xml file the “choose file” button is not a button anymore and wont let me upload anything. So basically when my mouse hovers over the “choose file” button it doesn’t acknowledge that its a button it doesn’t change to the pointing hand or anything. When I click on the “choose file” button it doesn’t change to the pointing hand or do anything. And the same goes for the blue “import file” button underneath it. I hope that was enough info because I saw someone else with the same problem ask the same question but the guy said he gave too little info about the problem and couldn’t help.

    https://wordpress.org/plugins/types/

Viewing 14 replies - 1 through 14 (of 14 total)
  • chlewis85 did you figure it out?

    I also have this problem! Does anyone know if there is a way to manually upload via ftp? If so, where to put it?

    Dear Guys

    This button should be active after you choose a file with xml or zip extension.

    See screencast:

    https://youtu.be/U-zbEySXqu8

    cheers,
    Marcin

    Thread Starter chlewis85

    (@chlewis85)

    Marcin we know that’s how it’s supposed to work but the “choose file” button does not work. That is the grey button directly over the blue “import file” button. It does not let us choose a file to upload. It is not active or clickable.

    Marcin we know that’s how it’s supposed to work but the “choose file” button does not work. That is the grey button directly over the blue “import file” button. It does not let us choose a file to upload. It is not active or clickable.

    That’s very strange – this button (file) is from system, is not controlled by Types.

    Marcin

    Thread Starter chlewis85

    (@chlewis85)

    Marcin my problem is resolved thanks for the help. The problem was with the web hosting operating systems control panel. I had to switch from “Windows with Plesk” to “Linux with cPanel”. After I did that the button was active. I was told WordPress does not work well with Plesk and that I should use cPanel. Good thing I switched, cPanel is alot better and more user friendly. I don’t know if that will help you out kathleenberbec.

    the “choose file” bottun is disable …
    the easy way to solve do it like this

    when the bottun didn’t work just right clik on choose file or press f12 key bottun the code panel will open and find the choose file botton u will see its disable just rename the disable to enable and dont close the window import ur (XML) file and import then close
    its working
    good job….

    I had the exact same problem , solution from kozeybash worked !

    Thanks a lot !

    Doesn’t work for me, I can’t find where I can change the button to enable… can you help me please?

    Hi UW. same problem after installing plugin types. Host is looking after te problem.

    Thanks for your answer Edjebeer. But now I have an other question since I’m stuck until it is working. As host you mean your web host? Means I would have to get a hold of mine? Or the plugin’s creator?

    Hi UW,

    Click the link and see answer NYC TECH CLUB

    Will tell you if my problem is slovend. My host is working on it.

    Well I found out how to do it! What I did is open filezila, opened (right click and then edit) the following file: /httpdocs/wordpress/content/plugins/types/includes/import-export.php
    I went to find the download button like kozeybash said and changed the following line:
    $attributes = !wpcf_admin_import_dir() ? array(‘disabled’ => ‘disabled’) : array();
    to
    $attributes = !wpcf_admin_import_dir() ? array(‘enable’ => ‘enable’) : array();
    It just took me about 5 hours to find a solution with what I found here and a bit of perceverance. Hope this helps.

    Or just open the file and paste this in it and then save it back on your web host server where you took it:

    <?php
    /*
    * Import/export data.
    *
    *
    */
    require_once WPCF_EMBEDDED_INC_ABSPATH . ‘/import-export.php’;

    /**
    * Import/Export form data.
    *
    * @return type
    */
    function wpcf_admin_import_export_form()
    {
    $form = array();
    $form[‘wpnonce’] = array(
    ‘#type’ => ‘hidden’,
    ‘#name’ => ‘_wpnonce’,
    ‘#value’ => wp_create_nonce( ‘wpcf_import’ ),
    );
    $form_base = $form;
    $show_first_screen = true;
    if ( isset( $_POST[‘_wpnonce’] ) && wp_verify_nonce( $_POST[‘_wpnonce’], ‘wpcf_import’ ) ) {
    $show_first_screen = false;
    if ( isset( $_POST[‘import-final’] ) ) {
    if ( $_POST[‘mode’] == ‘file’ && !empty( $_POST[‘file’] ) ) {
    $file = get_transient( sanitize_text_field( $_POST[‘file’] ) );
    if ( file_exists($file) ) {
    $info = pathinfo($file);
    $is_zip = $info[‘extension’] == ‘zip’ ? true : false;
    if ( $is_zip ) {
    $zip = zip_open($file);
    if ( is_resource( $zip ) ) {
    while ( ($zip_entry = zip_read( $zip )) !== false ) {
    if ( zip_entry_name( $zip_entry ) == ‘settings.xml’ ) {
    $data = @zip_entry_read( $zip_entry,
    zip_entry_filesize( $zip_entry ) );
    }
    }
    } else {
    echo ‘<div class=”message error”><p>’
    . __( ‘Unable to open zip file’, ‘wpcf’ )
    . ‘</p></div>’;
    return array();
    }
    } else {
    $data = @file_get_contents( $file );
    }

    @unlink($file);

    if ( $data ) {
    wpcf_admin_import_data( $data );
    } else {
    echo ‘<div class=”message error”><p>’
    . __( ‘Unable to process file’, ‘wpcf’ )
    . ‘</p></div>’;
    return array();
    }
    } else {
    echo ‘<div class=”message error”><p>’
    . __( ‘Unable to process file’, ‘wpcf’ )
    . ‘</p></div>’;
    return array();
    }
    }
    if ( $_POST[‘mode’] == ‘text’ && !empty( $_POST[‘text’] ) ) {
    $charset = !empty( $_POST[‘text-encoding’] ) ? sanitize_text_field( $_POST[‘text-encoding’] ) : get_option( ‘blog_charset’ );
    wpcf_admin_import_data( stripslashes( html_entity_decode( $_POST[‘text’],
    ENT_QUOTES, $charset ) ) );
    }
    } elseif ( isset( $_POST[‘step’] ) ) {
    $mode = ‘none’;
    $data = ”;
    if ( !empty( $_POST[‘import-file’] ) && !empty( $_FILES[‘file’][‘tmp_name’] ) ) {
    if ( $_FILES[‘file’][‘type’] == ‘text/xml’ ) {
    $_FILES[‘file’][‘name’] .= ‘.txt’;
    }
    /*
    *
    * We need to move uploaded file manually
    */
    if ( !empty( $_FILES[‘file’][‘error’] ) ) {
    echo ‘<div class=”message error”><p>’
    . __( ‘Error uploading file’, ‘wpcf’ )
    . ‘</p></div>’;
    return array();
    }
    $wp_upload_dir = wp_upload_dir();
    $new_file = $wp_upload_dir[‘basedir’] . ‘/’ . $_FILES[‘file’][‘name’];
    $move = move_uploaded_file( $_FILES[‘file’][‘tmp_name’],
    $new_file );
    if ( !$move ) {
    echo ‘<div class=”message error”><p>’
    . __( ‘Error moving uploaded file’, ‘wpcf’ )
    . ‘</p></div>’;
    return array();
    }

    $uploaded_file = array(
    ‘file’ => $new_file
    );
    $info = pathinfo( $uploaded_file[‘file’] );
    $is_zip = $info[‘extension’] == ‘zip’ ? true : false;
    if ( $is_zip ) {
    $zip = zip_open( $uploaded_file[‘file’] );
    if ( is_resource( $zip ) ) {
    while ( ($zip_entry = zip_read( $zip )) !== false ) {
    if ( zip_entry_name( $zip_entry ) == ‘settings.xml’ ) {
    $data = @zip_entry_read( $zip_entry,
    zip_entry_filesize( $zip_entry ) );
    }
    }
    } else {
    echo ‘<div class=”message error”><p>’
    . __( ‘Unable to open zip file’, ‘wpcf’ )
    . ‘</p></div>’;
    return array();
    }
    } else {
    $data = @file_get_contents( $uploaded_file[‘file’] );
    }
    /**
    * use Transients API to store file fullpath
    */
    $current_user = wp_get_current_user();
    $cache_key = md5($current_user->user_email.$uploaded_file[‘file’]);
    set_transient( $cache_key, $uploaded_file[‘file’], 60*60 );
    $form[‘file’] = array(
    ‘#type’ => ‘hidden’,
    ‘#name’ => ‘file’,
    ‘#value’ => $cache_key,
    );
    $mode = ‘file’;
    } elseif ( !empty( $_POST[‘import-text’] ) && !empty( $_POST[‘text’] ) ) {
    $data = stripslashes( $_POST[‘text’] );
    if ( preg_match( ‘/encoding=(“[^”]*”|\'[^\’]*\’)/s’, $data,
    $match ) ) {
    $charset = trim( $match[1], ‘”‘ );
    } else {
    $charset = !empty( $_POST[‘text-encoding’] ) ? sanitize_text_field( $_POST[‘text-encoding’] ) : get_option( ‘blog_charset’ );
    }
    $form[‘text’] = array(
    ‘#type’ => ‘hidden’,
    ‘#name’ => ‘text’,
    ‘#value’ => htmlentities( stripslashes( $_POST[‘text’] ),
    ENT_QUOTES, $charset ),
    );
    $form[‘text-encoding’] = array(
    ‘#type’ => ‘hidden’,
    ‘#name’ => ‘text-encoding’,
    ‘#value’ => $charset,
    );
    $mode = ‘text’;
    }
    if ( empty( $data ) ) {
    echo ‘<div class=”message error”><p>’
    . __( ‘Data not valid’, ‘wpcf’ )
    . ‘</p></div>’;
    $show_first_screen = true;
    } else {
    $data = wpcf_admin_import_export_settings( $data );
    if ( empty( $data ) ) {
    echo ‘<div class=”message error”><p>’
    . __( ‘Data not valid’, ‘wpcf’ )
    . ‘</p></div>’;
    $show_first_screen = true;
    } else {
    $form = array_merge( $form, $data );
    $form[‘mode’] = array(
    ‘#type’ => ‘hidden’,
    ‘#name’ => ‘mode’,
    ‘#value’ => $mode,
    );
    $form[‘import-final’] = array(
    ‘#type’ => ‘hidden’,
    ‘#name’ => ‘import-final’,
    ‘#value’ => 1,
    );
    $form[‘submit’] = array(
    ‘#type’ => ‘submit’,
    ‘#name’ => ‘import’,
    ‘#value’ => __( ‘Import’, ‘wpcf’ ),
    ‘#attributes’ => array(‘class’ => ‘button-primary’),
    );
    }
    }
    }
    }
    if ( $show_first_screen ) {
    $form = $form_base;
    $form[‘submit’] = array(
    ‘#type’ => ‘submit’,
    ‘#name’ => ‘export’,
    ‘#value’ => __( ‘Export’, ‘wpcf’ ),
    ‘#attributes’ => array(‘class’ => ‘button-primary’),
    ‘#after’ => ‘

    ‘,
    ‘#before’ => ‘<h3>’ . __( ‘Export Types data’, ‘wpcf’ ) . ‘</h3>’
    . __( ‘Download all custom fields, custom post types and taxonomies created by Types plugin.’, ‘wpcf’ ) . ‘

    ‘,
    );
    /**
    * check is temp folder available?
    */
    $temp = wpcf_get_temporary_directory();
    if ( empty($temp) ) {
    unset($form[‘submit’]);
    }
    if ( extension_loaded( ‘simplexml’ ) ) {
    $attributes = !wpcf_admin_import_dir() ? array(‘enable’ => ‘enable’) : array();
    $form[‘file’] = array(
    ‘#type’ => ‘file’,
    ‘#name’ => ‘file’,
    ‘#prefix’ => __( ‘Upload XML file’, ‘wpcf’ ) . ‘
    ‘,
    ‘#before’ => ‘<h3>’ . __( ‘Import Types data file’, ‘wpcf’ ) . ‘</h3>’,
    ‘#inline’ => true,
    ‘#attributes’ => $attributes,
    );
    $form[‘submit-file’] = array(
    ‘#type’ => ‘submit’,
    ‘#name’ => ‘import-file’,
    ‘#value’ => __( ‘Import file’, ‘wpcf’ ),
    ‘#attributes’ => array_merge(
    $attributes,
    array(
    ‘class’ => ‘button-primary’,
    ‘disabled’ => ‘disabled’,
    )
    ),
    ‘#prefix’ => ‘
    ‘,
    ‘#suffix’ => ‘

    ‘,
    );
    $form[‘text’] = array(
    ‘#type’ => ‘textarea’,
    ‘#title’ => __( ‘Paste code here’, ‘wpcf’ ),
    ‘#name’ => ‘text’,
    ‘#attributes’ => array(‘rows’ => 20),
    ‘#before’ => ‘<h3>’ . __( ‘Import Types data text input’, ‘wpcf’ ) . ‘</h3>’,
    );
    $form[‘text-encoding’] = array(
    ‘#type’ => ‘textfield’,
    ‘#title’ => __( ‘Encoding’, ‘wpcf’ ),
    ‘#name’ => ‘text-encoding’,
    ‘#value’ => get_option( ‘blog_charset’ ),
    ‘#description’ => __( ‘If encoding is set in text input, it will override this setting.’, ‘wpcf’ ),
    );
    $form[‘submit-text’] = array(
    ‘#type’ => ‘submit’,
    ‘#name’ => ‘import-text’,
    ‘#value’ => __( ‘Import text’, ‘wpcf’ ),
    ‘#attributes’ => array(‘class’ => ‘button-primary’),
    );
    $form[‘step’] = array(
    ‘#type’ => ‘hidden’,
    ‘#name’ => ‘step’,
    ‘#value’ => 1,
    );
    } else {
    echo ‘<div class=”message error”><p>’
    . __( ‘PHP SimpleXML extension not loaded: Importing not available’, ‘wpcf’ )
    . ‘</p></div>’;
    }
    }

    return $form;
    }

    /**
    * File upload error handler.
    *
    * @param type $file
    * @param type $error_msg
    */
    function wpcf_admin_import_export_file_upload_error($file, $error_msg)
    {
    echo ‘<div class=”message error”><p>’ . $error_msg . ‘</p></div>’;
    }

    /**
    * Import settings.
    *
    * @global object $wpdb
    * @param SimpleXMLElement $data
    * @return string
    */
    function wpcf_admin_import_export_settings($data)
    {
    global $wpdb;
    $form = array();
    $form[‘title’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘General Settings’, ‘wpcf’ ) . ‘</h2>’,
    );
    $form[‘overwrite-settings’] = array(
    ‘#type’ => ‘checkbox’,
    ‘#title’ => __( ‘Overwrite settings’, ‘wpcf’ ),
    ‘#name’ => ‘overwrite-settings’,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $form[‘overwrite-or-add-groups’] = array(
    ‘#type’ => ‘checkbox’,
    ‘#title’ => __( ‘Bulk overwrite groups if exist’, ‘wpcf’ ),
    ‘#name’ => ‘overwrite-groups’,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $form[‘delete-groups’] = array(
    ‘#type’ => ‘checkbox’,
    ‘#title’ => __( “Delete group if don’t exist”, ‘wpcf’ ),
    ‘#name’ => ‘delete-groups’,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $form[‘delete-fields’] = array(
    ‘#type’ => ‘checkbox’,
    ‘#title’ => __( “Delete field if don’t exist”, ‘wpcf’ ),
    ‘#name’ => ‘delete-fields’,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $form[‘delete-types’] = array(
    ‘#type’ => ‘checkbox’,
    ‘#title’ => __( “Delete custom post type if don’t exist”, ‘wpcf’ ),
    ‘#name’ => ‘delete-types’,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $form[‘delete-tax’] = array(
    ‘#type’ => ‘checkbox’,
    ‘#title’ => __( “Delete custom taxonomy if don’t exist”, ‘wpcf’ ),
    ‘#name’ => ‘delete-tax’,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    libxml_use_internal_errors( true );
    $data = simplexml_load_string( $data );
    if ( !$data ) {
    echo ‘<div class=”message error”><p>’ . __( ‘Error parsing XML’, ‘wpcf’ ) . ‘</p></div>’;
    foreach ( libxml_get_errors() as $error ) {
    echo ‘<div class=”message error”><p>’ . $error->message . ‘</p></div>’;
    }
    libxml_clear_errors();
    return false;
    }
    // $data = new SimpleXMLElement($data);
    // Check groups
    if ( !empty( $data->groups ) ) {
    $form[‘title-1’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Groups to be added/updated’, ‘wpcf’ ) . ‘</h2>’,
    );
    $groups_check = array();
    foreach ( $data->groups->group as $group ) {
    $group = (array) $group;
    $form[‘group-add-‘ . $group[‘ID’]] = array(
    ‘#type’ => ‘checkbox’,
    ‘#name’ => ‘groups[‘ . $group[‘ID’] . ‘][add]’,
    ‘#default_value’ => true,
    ‘#title’ => ‘‘ . esc_html( $group[‘post_title’] ) . ‘‘,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $post = $wpdb->get_var(
    $wpdb->prepare(
    “SELECT ID FROM $wpdb->posts WHERE post_title = %s AND post_type = %s”,
    $group[‘post_title’],
    $group[‘post_type’]
    )
    );
    if ( !empty( $post ) ) {
    $form[‘group-add-‘ . $group[‘ID’]][‘#after’] = wpcf_form_simple(
    array(‘group-add-update-‘ . $group[‘ID’] => array(
    ‘#type’ => ‘radios’,
    ‘#name’ => ‘groups[‘ . $group[‘ID’] . ‘][update]’,
    ‘#inline’ => true,
    ‘#options’ => array(
    __( ‘Update’, ‘wpcf’ ) => ‘update’,
    __( ‘Create new’, ‘wpcf’ ) => ‘add’
    ),
    ‘#default_value’ => ‘update’,
    ‘#before’ => ‘
    ‘,
    ‘#after’ => ‘
    ‘,
    )
    )
    );
    }
    $groups_check[] = $group[‘post_title’];
    }
    $groups_existing = get_posts( ‘post_type=wp-types-group&post_status=null’ );
    if ( !empty( $groups_existing ) ) {
    $groups_to_be_deleted = array();
    foreach ( $groups_existing as $post ) {
    if ( !in_array( $post->post_title, $groups_check ) ) {
    $groups_to_be_deleted[‘‘ . $post->post_title . ‘‘] = $post->ID;
    }
    }
    if ( !empty( $groups_to_be_deleted ) ) {
    $form[‘title-groups-deleted’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Groups to be deleted’, ‘wpcf’ ) . ‘</h2>’,
    );
    $form[‘groups-deleted’] = array(
    ‘#type’ => ‘checkboxes’,
    ‘#name’ => ‘groups-to-be-deleted’,
    ‘#options’ => $groups_to_be_deleted,
    );
    }
    }
    }

    // Check fields
    if ( !empty( $data->fields ) ) {
    $form[‘title-fields’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Fields to be added/updated’, ‘wpcf’ ) . ‘</h2>’,
    );
    $fields_existing = wpcf_admin_fields_get_fields();
    $fields_check = array();
    $fields_to_be_deleted = array();
    foreach ( $data->fields->field as $field ) {
    $field = (array) $field;
    if ( empty( $field[‘id’] ) || empty( $field[‘name’] ) ) {
    continue;
    }
    $form[‘field-add-‘ . $field[‘id’]] = array(
    ‘#type’ => ‘checkbox’,
    ‘#name’ => ‘fields[‘ . $field[‘id’] . ‘][add]’,
    ‘#default_value’ => true,
    ‘#title’ => ‘‘ . $field[‘name’] . ‘‘,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $fields_check[] = $field[‘id’];
    }

    foreach ( $fields_existing as $field_id => $field ) {
    if ( !in_array( $field_id, $fields_check ) ) {
    $fields_to_be_deleted[‘‘ . $field[‘name’] . ‘‘] = $field[‘id’];
    }
    }

    if ( !empty( $fields_to_be_deleted ) ) {
    $form[‘title-fields-deleted’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Fields to be deleted’, ‘wpcf’ ) . ‘</h2>’,
    );
    $form[‘fields-deleted’] = array(
    ‘#type’ => ‘checkboxes’,
    ‘#name’ => ‘fields-to-be-deleted’,
    ‘#options’ => $fields_to_be_deleted,
    );
    }
    }

    // Check user groups
    if ( !empty( $data->user_groups ) ) {
    $form[‘title-users’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘User Groups to be added/updated’, ‘wpcf’ ) . ‘</h2>’,
    );
    $groups_check = array();
    foreach ( $data->user_groups->group as $group ) {
    $group = (array) $group;
    $form[‘user-group-add-‘ . $group[‘ID’]] = array(
    ‘#type’ => ‘checkbox’,
    ‘#name’ => ‘user_groups[‘ . $group[‘ID’] . ‘][add]’,
    ‘#default_value’ => true,
    ‘#title’ => ‘‘ . esc_html( $group[‘post_title’] ) . ‘‘,
    ‘#inline’ => true,
    ‘#after’ => ‘

    ‘,
    );
    $post = $wpdb->get_var(
    $wpdb->prepare(
    “SELECT ID FROM $wpdb->posts WHERE post_title = %s AND post_type = %s”,
    $group[‘post_title’],
    $group[‘post_type’]
    )
    );
    if ( !empty( $post ) ) {
    $form[‘user-group-add-‘ . $group[‘ID’]][‘#after’] = wpcf_form_simple(
    array(‘user-group-add-update-‘ . $group[‘ID’] => array(
    ‘#type’ => ‘radios’,
    ‘#name’ => ‘user_groups[‘ . $group[‘ID’] . ‘][update]’,
    ‘#inline’ => true,
    ‘#options’ => array(
    __( ‘Update’, ‘wpcf’ ) => ‘update’,
    __( ‘Create new’, ‘wpcf’ ) => ‘add’
    ),
    ‘#default_value’ => ‘update’,
    ‘#before’ => ‘
    ‘,
    ‘#after’ => ‘
    ‘,
    )
    )
    );
    }
    $groups_check[] = $group[‘post_title’];
    }
    $groups_existing = get_posts( ‘post_type=wp-types-user-group&post_status=null’ );
    if ( !empty( $groups_existing ) ) {
    $groups_to_be_deleted = array();
    foreach ( $groups_existing as $post ) {
    if ( !in_array( $post->post_title, $groups_check ) ) {
    $groups_to_be_deleted[‘‘ . $post->post_title . ‘‘] = $post->ID;
    }
    }
    if ( !empty( $groups_to_be_deleted ) ) {
    $form[‘title-groups-deleted’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Groups to be deleted’, ‘wpcf’ ) . ‘</h2>’,
    );
    $form[‘user-groups-deleted’] = array(
    ‘#type’ => ‘checkboxes’,
    ‘#name’ => ‘user-groups-to-be-deleted’,
    ‘#options’ => $groups_to_be_deleted,
    );
    }
    }
    }

    // Check user fields
    if ( !empty( $data->user_fields ) ) {
    $form[‘user-title-fields’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘User fields to be added/updated’, ‘wpcf’ ) . ‘</h2>’,
    );
    $fields_existing = wpcf_admin_fields_get_fields( false, false, false, ‘wpcf-usermeta’ );
    $fields_check = array();
    $fields_to_be_deleted = array();
    foreach ( $data->user_fields->field as $field ) {
    $field = (array) $field;
    if ( empty( $field[‘id’] ) || empty( $field[‘name’] ) ) {
    continue;
    }
    $form[‘user-field-add-‘ . $field[‘id’]] = array(
    ‘#type’ => ‘checkbox’,
    ‘#name’ => ‘user_fields[‘ . $field[‘id’] . ‘][add]’,
    ‘#default_value’ => true,
    ‘#title’ => ‘‘ . $field[‘name’] . ‘‘,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $fields_check[] = $field[‘id’];
    }

    foreach ( $fields_existing as $field_id => $field ) {
    if ( !in_array( $field_id, $fields_check ) ) {
    $fields_to_be_deleted[‘‘ . $field[‘name’] . ‘‘] = $field[‘id’];
    }
    }

    if ( !empty( $fields_to_be_deleted ) ) {
    $form[‘user-title-fields-deleted’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Fields to be deleted’, ‘wpcf’ ) . ‘</h2>’,
    );
    $form[‘user-fields-deleted’] = array(
    ‘#type’ => ‘checkboxes’,
    ‘#name’ => ‘user-fields-to-be-deleted’,
    ‘#options’ => $fields_to_be_deleted,
    );
    }
    }

    // Check types
    if ( !empty( $data->types ) ) {
    $form[‘title-types’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Custom post types to be added/updated’, ‘wpcf’ ) . ‘</h2>’,
    );
    $types_existing = get_option( WPCF_OPTION_NAME_CUSTOM_TYPES, array() );
    $types_check = array();
    $types_to_be_deleted = array();
    foreach ( $data->types->type as $type ) {
    $type = (array) $type;
    $form[‘type-add-‘ . $type[‘id’]] = array(
    ‘#type’ => ‘checkbox’,
    ‘#name’ => ‘types[‘ . $type[‘id’] . ‘][add]’,
    ‘#default_value’ => true,
    ‘#title’ => ‘‘ . $type[‘labels’]->name . ‘‘,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $types_check[] = $type[‘id’];
    }

    foreach ( $types_existing as $type_id => $type ) {
    if ( !in_array( $type_id, $types_check ) ) {
    $types_to_be_deleted[‘‘ . $type[‘labels’][‘name’] . ‘‘] = $type_id;
    }
    }

    if ( !empty( $types_to_be_deleted ) ) {
    $form[‘title-types-deleted’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Custom post types to be deleted’, ‘wpcf’ ) . ‘</h2>’,
    );
    $form[‘types-deleted’] = array(
    ‘#type’ => ‘checkboxes’,
    ‘#name’ => ‘types-to-be-deleted’,
    ‘#options’ => $types_to_be_deleted,
    );
    }
    }

    // Check taxonomies
    if ( !empty( $data->taxonomies ) ) {
    $form[‘title-tax’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Custom taxonomies to be added/updated’, ‘wpcf’ ) . ‘</h2>’,
    );
    $taxonomies_existing = get_option( WPCF_OPTION_NAME_CUSTOM_TAXONOMIES, array() );
    $taxonomies_check = array();
    $taxonomies_to_be_deleted = array();
    foreach ( $data->taxonomies->taxonomy as $taxonomy ) {
    $taxonomy = (array) $taxonomy;
    $form[‘taxonomy-add-‘ . $taxonomy[‘id’]] = array(
    ‘#type’ => ‘checkbox’,
    ‘#name’ => ‘taxonomies[‘ . $taxonomy[‘id’] . ‘][add]’,
    ‘#default_value’ => true,
    ‘#title’ => ‘‘ . $taxonomy[‘labels’]->name . ‘‘,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    $taxonomies_check[] = $taxonomy[‘id’];
    }

    foreach ( $taxonomies_existing as $taxonomy_id => $taxonomy ) {
    if ( !in_array( $taxonomy_id, $taxonomies_check ) ) {
    $taxonomies_to_be_deleted[‘‘ . $taxonomy[‘labels’][‘name’] . ‘‘] = $taxonomy_id;
    }
    }

    if ( !empty( $taxonomies_to_be_deleted ) ) {
    $form[‘title-taxonomies-deleted’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Custom taxonomies to be deleted’, ‘wpcf’ ) . ‘</h2>’,
    );
    $form[‘taxonomies-deleted’] = array(
    ‘#type’ => ‘checkboxes’,
    ‘#name’ => ‘taxonomies-to-be-deleted’,
    ‘#options’ => $taxonomies_to_be_deleted,
    );
    }
    }

    // Check post relationships
    if ( !empty( $data->post_relationships ) ) {
    $form[‘title-post-relationships’] = array(
    ‘#type’ => ‘markup’,
    ‘#markup’ => ‘<h2>’ . __( ‘Post relationship’, ‘wpcf’ ) . ‘</h2>’,
    );
    $form[‘pr-add’] = array(
    ‘#type’ => ‘checkbox’,
    ‘#name’ => ‘post_relationship’,
    ‘#default_value’ => true,
    ‘#title’ => ‘‘ . __( ‘Create relationships’, ‘wpcf’ ) . ‘‘,
    ‘#inline’ => true,
    ‘#after’ => ‘
    ‘,
    );
    }

    return $form;
    }

    /**
    * Exports data to XML.
    */
    function wpcf_admin_export_data($download = true)
    {
    /**
    *
    * Since Types 1.2
    * Merged function with Module Manager
    * /embedded/includes/module-manager.php
    * wpcf_admin_export_selected_data( array $items, $_type = ‘all’, $return = ‘download’ )
    *
    */
    $return = $download ? ‘download’ : ‘xml’;
    return wpcf_admin_export_selected_data( array(), ‘all’, $return );
    }

    /**
    * Check upload dir.
    *
    * @return type
    */
    function wpcf_admin_import_dir()
    {
    $dir = get_temp_dir();
    return is_writable( $dir );
    }

    Thanks UW,

    Your first option helpend me out.

    Great,

Viewing 14 replies - 1 through 14 (of 14 total)
  • The topic ‘Won't let me Import XML the "choose file" button does not work’ is closed to new replies.