Exemple #1
0
function wpcf7_install()
{
    global $wpdb, $wpcf7;
    if (wpcf7_table_exists()) {
        return;
    }
    // Exists already
    $charset_collate = '';
    if ($wpdb->has_cap('collation')) {
        if (!empty($wpdb->charset)) {
            $charset_collate = "DEFAULT CHARACTER SET {$wpdb->charset}";
        }
        if (!empty($wpdb->collate)) {
            $charset_collate .= " COLLATE {$wpdb->collate}";
        }
    }
    $wpdb->query("CREATE TABLE IF NOT EXISTS {$wpcf7->contactforms} (\r\n\t\tcf7_unit_id bigint(20) unsigned NOT NULL auto_increment,\r\n\t\ttitle varchar(200) NOT NULL default '',\r\n\t\tform text NOT NULL,\r\n\t\tmail text NOT NULL,\r\n\t\tmail_2 text NOT NULL,\r\n\t\tmessages text NOT NULL,\r\n\t\tadditional_settings text NOT NULL,\r\n\t\tPRIMARY KEY (cf7_unit_id)) {$charset_collate};");
    if (!wpcf7_table_exists()) {
        return false;
    }
    // Failed to create
    $legacy_data = get_option('wpcf7');
    if (is_array($legacy_data) && is_array($legacy_data['contact_forms']) && $legacy_data['contact_forms']) {
        foreach ($legacy_data['contact_forms'] as $key => $value) {
            $wpdb->insert($wpcf7->contactforms, array('cf7_unit_id' => $key, 'title' => $value['title'], 'form' => maybe_serialize($value['form']), 'mail' => maybe_serialize($value['mail']), 'mail_2' => maybe_serialize($value['mail_2']), 'messages' => maybe_serialize($value['messages']), 'additional_settings' => maybe_serialize($value['additional_settings'])), array('%d', '%s', '%s', '%s', '%s', '%s', '%s'));
        }
    } else {
        wpcf7_load_plugin_textdomain();
        $wpdb->insert($wpcf7->contactforms, array('title' => __('Contact form', 'wpcf7') . ' 1', 'form' => maybe_serialize(wpcf7_default_form_template()), 'mail' => maybe_serialize(wpcf7_default_mail_template()), 'mail_2' => maybe_serialize(wpcf7_default_mail_2_template()), 'messages' => maybe_serialize(wpcf7_default_messages_template())));
    }
}
function wpcf7_install()
{
    if ($opt = get_option('wpcf7')) {
        return;
    }
    wpcf7_load_plugin_textdomain();
    wpcf7_register_post_types();
    wpcf7_upgrade();
    if (get_posts(array('post_type' => 'wpcf7_contact_form'))) {
        return;
    }
    $contact_form = wpcf7_get_contact_form_default_pack(array('title' => sprintf(__('Contact form %d', 'wpcf7'), 1)));
    $contact_form->save();
}