public static function import_demo_data() { //FIRSTLY LETS CHESK IS CUSTOMER UPLOAD DATA FILES IN wp_content/uploads $wp_options = file_exists(TMM_Helper::get_upload_folder() . 'almera' . '/wp_options.dat'); $wp_postmeta = file_exists(TMM_Helper::get_upload_folder() . 'almera' . '/wp_postmeta.dat'); $demo_db = file_exists(TMM_Helper::get_upload_folder() . 'almera' . '/demo_db.sql'); if (!$wp_options or !$wp_postmeta or !$demo_db) { _e("Ooops! It seems demo files are missed on the server. Please, make sure the \"uploads\" directory exists in your \"/wp-content\" directory with all the necessary files from theme bundle.", 'almera'); exit; } //*** check for tmm_shortcodes plugin uploading $tmm_shortcodes = ABSPATH . 'wp-content/plugins/tmm_shortcodes'; $tmm_shortcodes = is_dir($tmm_shortcodes); if (!$tmm_shortcodes) { _e("Ooops! You've missed to install the \"tmm_shortcodes\" before demo installation. Please install tmm_shortcodes before doing that. You can find it in theme bundle. ", 'almera'); exit; } //*** DATA BASE IMPORT global $wpdb; $site_url = site_url(); $new_file_path = ABSPATH; //*** $sql_install_data = file_get_contents(TMM_Helper::get_upload_folder() . 'almera' . '/demo_db.sql'); $sql_install_data = str_replace('new_site_url', $site_url, $sql_install_data); $sql_install_data = str_replace('new_file_path', $new_file_path, $sql_install_data); //*** $wpdb->query("DROP TABLE `{$wpdb->commentmeta}`"); $wpdb->query("DROP TABLE `{$wpdb->comments}`"); $wpdb->query("DROP TABLE `{$wpdb->links}`"); $wpdb->query("DROP TABLE `{$wpdb->options}`"); $wpdb->query("DROP TABLE `{$wpdb->postmeta}`"); $wpdb->query("DROP TABLE `{$wpdb->posts}`"); $wpdb->query("DROP TABLE `{$wpdb->terms}`"); $wpdb->query("DROP TABLE `{$wpdb->term_relationships}`"); $wpdb->query("DROP TABLE `{$wpdb->term_taxonomy}`"); $wpdb->query("DROP TABLE `{$wpdb->usermeta}`"); $wpdb->query("DROP TABLE `{$wpdb->users}`"); //*** $sql_install_data = str_replace('wp_commentmeta', $wpdb->commentmeta, $sql_install_data); $sql_install_data = str_replace('wp_comments', $wpdb->comments, $sql_install_data); $sql_install_data = str_replace('wp_layerslider', $wpdb->base_prefix . 'layerslider', $sql_install_data); $sql_install_data = str_replace('wp_links', $wpdb->links, $sql_install_data); $sql_install_data = str_replace('wp_options', $wpdb->options, $sql_install_data); $sql_install_data = str_replace('wp_postmeta', $wpdb->postmeta, $sql_install_data); $sql_install_data = str_replace('wp_posts', $wpdb->posts, $sql_install_data); $sql_install_data = str_replace('wp_revslider_sliders', $wpdb->base_prefix . 'revslider_sliders', $sql_install_data); $sql_install_data = str_replace('wp_terms', $wpdb->terms, $sql_install_data); $sql_install_data = str_replace('wp_term_relationships', $wpdb->term_relationships, $sql_install_data); $sql_install_data = str_replace('wp_term_taxonomy', $wpdb->term_taxonomy, $sql_install_data); $sql_install_data = str_replace('wp_usermeta', $wpdb->usermeta, $sql_install_data); $sql_install_data = str_replace('wp_users', $wpdb->users, $sql_install_data); //*** $sql_install_data = str_replace('wp_user_roles', $wpdb->base_prefix . 'user_roles', $sql_install_data); //*** $sql_install_data = explode('#---TMM_DUMP', $sql_install_data); //*** $sql_install_data = array_map('trim', $sql_install_data); $sql_install_data = array_map('utf8_encode', $sql_install_data); //*** if (!empty($sql_install_data)) { foreach ($sql_install_data as $query) { if (!empty($query)) { $wpdb->query($query); } } } //*** export serialized data from wp_postmeta.dat to wp_postmeta $wp_postmeta_data = file_get_contents(TMM_Helper::get_upload_folder() . 'almera' . '/wp_postmeta.dat'); $wp_postmeta_data = json_decode($wp_postmeta_data, TRUE); if (!empty($wp_postmeta_data)) { $wp_postmeta_data = self::array_value_replace($wp_postmeta_data, 'new_site_url', $site_url); foreach ($wp_postmeta_data as $row_data) { $data = array(); if (is_array($row_data['meta_value'])) { $data = array('meta_id' => $row_data['meta_id'], 'post_id' => $row_data['post_id'], 'meta_key' => $row_data['meta_key'], 'meta_value' => ''); } else { $data = array('meta_id' => $row_data['meta_id'], 'post_id' => $row_data['post_id'], 'meta_key' => $row_data['meta_key'], 'meta_value' => $row_data['meta_value']); } //***** $wpdb->insert($wpdb->postmeta, $data); if (is_array($row_data['meta_value'])) { update_post_meta($row_data['post_id'], $row_data['meta_key'], $row_data['meta_value']); } } } //*** export serialized data from wp_options.dat to wp_postmeta $wp_options_data = file_get_contents(TMM_Helper::get_upload_folder() . 'almera' . '/wp_options.dat'); $wp_options_data = json_decode($wp_options_data, TRUE); if (!empty($wp_options_data)) { $wp_options_data = self::array_value_replace($wp_options_data, 'new_site_url', $site_url); update_option(TMM_THEME_PREFIX . 'theme_options', $wp_options_data); } //*** global $wp_rewrite; $wp_rewrite->set_permalink_structure('/%postname%/'); $wp_rewrite->flush_rules(true); //*** $theme_mods = get_option('theme_mods_' . 'almera'); $theme_mods['nav_menu_locations']['primary'] = 2; update_option('theme_mods_' . 'almera', $theme_mods); //*** //DEMO USER CREATING $userdata['user_login'] = '******'; $userdata['user_pass'] = '******'; $userdata['user_email'] = '*****@*****.**'; $userdata['user_nicename'] = 'demo'; $userdata['role'] = 'administrator'; wp_insert_user($userdata); //*** echo 'succsess'; exit; }
public static function create_theme_scheme() { $upload_folder = TMM_Helper::get_upload_folder(); $upload_folder .= 'almera' . "/"; if (!file_exists($upload_folder)) { mkdir($upload_folder, 0777); } $upload_folder .= "theme_schemes"; if (!file_exists($upload_folder)) { mkdir($upload_folder, 0777); } //*** $name = strtolower(sanitize_file_name($_REQUEST['name'])); if (empty($name)) { exit; } //copy file custom1.css and rename it to $name.css copy(TMM_THEME_PATH . '/css/custom1.css', $upload_folder . '/' . $name . '.css'); //create file with js presets file_put_contents($upload_folder . '/' . $name . '.js', serialize($_REQUEST['js_data'])); //scheme data $scheme_data = array('key' => $name, 'name' => $_REQUEST['name'], 'color' => $_REQUEST['color']); file_put_contents($upload_folder . '/' . $name . '.data', serialize($scheme_data)); //*** echo $name; exit; }