1653 lines
48 KiB
PHP
1653 lines
48 KiB
PHP
<?php
|
|
/**
|
|
* Importer NasaTheme
|
|
*
|
|
* Since 4.0
|
|
*
|
|
*/
|
|
defined('ABSPATH') or die();
|
|
|
|
defined('ELESSI_IMPORT_TOTAL') or define('ELESSI_IMPORT_TOTAL', '25');
|
|
|
|
defined('ELESSI_DOMAIN') or define('ELESSI_DOMAIN', 'https://elessi.nasatheme.com');
|
|
|
|
/**
|
|
* Menu Importer Dashboard
|
|
*/
|
|
add_action('admin_menu', 'elessi_data_importer_menu', 99);
|
|
function elessi_data_importer_menu() {
|
|
if (current_user_can('manage_options')) {
|
|
if ('imported' !== get_option('nasatheme_imported', '')) {
|
|
$args = array(
|
|
// 'parent_slug' => 'themes.php', // Parent Menu slug.
|
|
'page_title' => esc_html__('Theme Setup', 'elessi-theme'),
|
|
'menu_title' => esc_html__('Theme Setup', 'elessi-theme'),
|
|
'capability' => 'edit_theme_options', // Capability.
|
|
'menu_slug' => 'nasa-install-demo-data', // Menu slug.
|
|
'function' => 'elessi_import_demo_data_output', // Callback.
|
|
);
|
|
} else {
|
|
$args = array(
|
|
// 'parent_slug' => 'themes.php', // Parent Menu slug.
|
|
'page_title' => esc_html__('Import More Demos', 'elessi-theme'),
|
|
'menu_title' => esc_html__('Import More Demos', 'elessi-theme'),
|
|
'capability' => 'edit_theme_options', // Capability.
|
|
'menu_slug' => 'nasa-additional-homepage-demo-data', // Menu slug.
|
|
'function' => 'elessi_additional_homepage_output', // Callback.
|
|
);
|
|
}
|
|
|
|
/* add_theme_page(
|
|
$args['page_title'],
|
|
$args['menu_title'],
|
|
$args['capability'],
|
|
$args['menu_slug'],
|
|
$args['function']
|
|
); */
|
|
|
|
add_submenu_page(
|
|
NASA_ADMIN_PAGE_SLUG,
|
|
$args['page_title'],
|
|
$args['menu_title'],
|
|
$args['capability'],
|
|
$args['menu_slug'],
|
|
$args['function']
|
|
);
|
|
|
|
/**
|
|
* Setup Image size
|
|
*/
|
|
if (get_option('nasa_theme_setup_img_size') !== 'yes') {
|
|
// Wordpress Media Setting
|
|
update_option('medium_size_w', 350);
|
|
update_option('large_size_w', 595);
|
|
|
|
// For Woo 3.3.x
|
|
update_option('woocommerce_single_image_width', 595); // Single product image
|
|
update_option('woocommerce_thumbnail_image_width', 350); // Product category thumbs
|
|
update_option('woocommerce_thumbnail_cropping', 'uncropped'); // Option crop
|
|
|
|
update_option('thumbnail_crop', '');
|
|
|
|
update_option('nasa_theme_setup_img_size', 'yes', 'no');
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Page Nasa Importer
|
|
*/
|
|
function elessi_import_demo_data_output() {
|
|
wp_enqueue_script('nasa_back_end-script-demo-data', ELESSI_THEME_URI . '/admin/assets/js/nasa-core-demo-data.js', array(), '6.3.1.2');
|
|
$nasa_core_js = 'var ajax_admin_demo_data="' . esc_url(admin_url('admin-ajax.php')) . '";';
|
|
wp_add_inline_script('nasa_back_end-script-demo-data', $nasa_core_js, 'before');
|
|
|
|
$sliders = array(
|
|
'01-fashion-1.zip' => 'Fashion 01',
|
|
'02-fashion-2.zip' => 'Fashion 02',
|
|
'03-fashion-3.zip' => 'Fashion 03',
|
|
'04-fashion-4.zip' => 'Fashion 04',
|
|
'05-baby.zip' => 'Baby',
|
|
'06-bag.zip' => 'Bag',
|
|
'07-bike.zip' => 'Bike',
|
|
'08-cosmetic.zip' => 'Cosmetic',
|
|
'09-digi-v1.zip' => 'Digital',
|
|
'10-face-mask.zip' => 'Face Mask',
|
|
'11-jewelry.zip' => 'Jewelry',
|
|
'12-organic-v1.zip' => 'Organic v1',
|
|
'13-t-shirt.zip' => 'T-shirt',
|
|
'14-christmas.zip' => 'Christmas',
|
|
'15-pet-accessories.zip' => 'Pet Accessories',
|
|
'16-watch-light.zip' => 'Watch - light',
|
|
'17-watch-dark.zip' => 'Watch - dark',
|
|
'18-auto-parts-v1.zip' => 'Auto Parts v1',
|
|
'19-tech-accessories-v3.zip' => 'Tech Accessories v3',
|
|
'20-medical-v2.zip' => 'Medical v2',
|
|
'21-organic-v4.zip' => 'Organic v4',
|
|
'22-organic-v5.zip' => 'Organic v5',
|
|
'23-organic-farm.zip' => 'Organic farm',
|
|
'24-plant-v3.zip' => 'Plant v3',
|
|
'25-toys-v1.zip' => 'Toy Kid v1',
|
|
);
|
|
|
|
include ELESSI_ADMIN_PATH . 'importer/tpl-import-demo-data.php';
|
|
}
|
|
|
|
/**
|
|
* Additional Homepage
|
|
*/
|
|
function elessi_additional_homepage_output() {
|
|
wp_enqueue_script('nasa_back_end-script-demo-data', ELESSI_THEME_URI . '/admin/assets/js/nasa-core-demo-data.js', array(), '6.3.1.2');
|
|
$nasa_core_js = 'var ajax_admin_demo_data="' . esc_url(admin_url('admin-ajax.php')) . '";';
|
|
wp_add_inline_script('nasa_back_end-script-demo-data', $nasa_core_js, 'before');
|
|
|
|
include ELESSI_ADMIN_PATH . 'importer/tpl-additional-homepage-data.php';
|
|
}
|
|
|
|
/**
|
|
* Install Child Theme
|
|
*/
|
|
add_action('wp_ajax_nasa_install_child_theme', 'elessi_install_child_theme');
|
|
function elessi_install_child_theme() {
|
|
global $wp_filesystem;
|
|
|
|
// Initialize the WP filesystem
|
|
if (empty($wp_filesystem)) {
|
|
require_once ABSPATH . '/wp-admin/includes/file.php';
|
|
WP_Filesystem();
|
|
}
|
|
|
|
|
|
$zip_url = ELESSI_REPO . '/theme-child/theme-child.zip';
|
|
|
|
$upload_dir = wp_upload_dir();
|
|
$dir_temp = $upload_dir['basedir'] . '/installer_temp';
|
|
|
|
/**
|
|
* Create temp dir
|
|
*/
|
|
if (!$wp_filesystem->is_dir($revs_temp)) {
|
|
if (!wp_mkdir_p($dir_temp)){
|
|
echo 'Cannot create temporary folder "' . $dir_temp . '".';
|
|
die('0');
|
|
}
|
|
}
|
|
|
|
$zip = $dir_temp . '/theme-child.zip';
|
|
|
|
$file_contents = file_get_contents($zip_url);
|
|
if ($file_contents === false) {
|
|
echo 'Unable to download file from "' . $zip_url . '".';
|
|
die('0');
|
|
}
|
|
|
|
file_put_contents($zip, $file_contents);
|
|
if (!$wp_filesystem->is_file($zip)) {
|
|
echo 'File "' . $zip . '" not exists.';
|
|
die('0');
|
|
}
|
|
|
|
try {
|
|
// unzip child-theme
|
|
$theme_root = ELESSI_THEME_PATH . '/../';
|
|
$pathArrayString = str_replace(array('/', '\\'), '|', ELESSI_THEME_PATH);
|
|
$themeNameArray = explode('|', $pathArrayString);
|
|
$theme_name = end($themeNameArray);
|
|
$theme_child = $theme_name . '-child';
|
|
|
|
if (!$wp_filesystem->is_dir($theme_root . $theme_child)) {
|
|
wp_mkdir_p($theme_root . $theme_child);
|
|
unzip_file($zip, $theme_root . $theme_child);
|
|
}
|
|
|
|
// Active Child Theme
|
|
if (is_dir($theme_root . $theme_child)) {
|
|
switch_theme($theme_child);
|
|
}
|
|
} catch (Exception $exc) {
|
|
die('0');
|
|
} finally {
|
|
// Delete zip
|
|
if (file_exists($zip)) {
|
|
unlink($zip);
|
|
}
|
|
}
|
|
|
|
die('1');
|
|
}
|
|
|
|
/**
|
|
* Install Plugin
|
|
*/
|
|
add_action('wp_ajax_nasa_install_plugin', 'elessi_install_plugin');
|
|
function elessi_install_plugin() {
|
|
$plugin_slug = isset($_REQUEST['plg']) ? $_REQUEST['plg'] : null;
|
|
$plugin_info = null;
|
|
|
|
$res = array(
|
|
'mess' => '',
|
|
'status' => '1'
|
|
);
|
|
|
|
if (trim($plugin_slug) !== '') {
|
|
$plugins = elessi_list_required_plugins();
|
|
|
|
foreach ($plugins as $plugin) {
|
|
if (isset($plugin['auto']) && $plugin['auto'] && $plugin['slug'] === $plugin_slug) {
|
|
$plugin_info = $plugin;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if (!class_exists('Elessi_Auto_Install_Plugins')) {
|
|
require_once ELESSI_ADMIN_PATH . 'importer/auto-install-plugins.php';
|
|
}
|
|
|
|
if ($plugin_info) {
|
|
$auto_install = new Elessi_Auto_Install_Plugins($plugin_info);
|
|
|
|
$auto_install->nasa_plugin_install();
|
|
|
|
$res['mess'] = $plugin_info['name'];
|
|
$res['status'] = $auto_install->nasa_plugin_active() ? '1' : '0';
|
|
}
|
|
}
|
|
|
|
die(json_encode($res));
|
|
}
|
|
|
|
/**
|
|
* Import demo data
|
|
*/
|
|
add_action('wp_ajax_nasa_import_contents', 'elessi_import_contents');
|
|
function elessi_import_contents() {
|
|
$res = array('nofile' => 'false');
|
|
|
|
if (current_user_can('manage_options')) {
|
|
set_time_limit(0);
|
|
header('X-XSS-Protection:0');
|
|
$partial = $_POST['file'];
|
|
$partial = $partial ? str_replace('data', '', $partial) : '';
|
|
|
|
if (!defined('WP_LOAD_IMPORTERS')) {
|
|
define('WP_LOAD_IMPORTERS', true); // we are loading importers
|
|
}
|
|
|
|
if (!class_exists('WP_Import')) { // if WP importer doesn't exist
|
|
$wp_import = ELESSI_ADMIN_PATH . 'importer/wordpress-importer.php';
|
|
require_once $wp_import;
|
|
}
|
|
|
|
if (class_exists('WP_Importer') && class_exists('WP_Import')) {
|
|
if (!isset($_SESSION['nasa_import']) || $partial == 1) {
|
|
$_SESSION['nasa_import'] = array();
|
|
}
|
|
|
|
/* Import Woocommerce if WooCommerce Exists */
|
|
if (class_exists('WooCommerce')) {
|
|
$partial = $partial < 10 ? '0' . $partial : $partial;
|
|
|
|
$theme_xml = ELESSI_ADMIN_PATH . 'importer/data-import/datas/data_Part_0' . $partial . '_of_' . ELESSI_IMPORT_TOTAL . '.xml';
|
|
if (is_file($theme_xml)) {
|
|
$importer = new WP_Import();
|
|
|
|
$importer->fetch_attachments = true;
|
|
ob_start();
|
|
$importer->import($theme_xml);
|
|
$res['mess'] = ob_get_clean();
|
|
} else {
|
|
$res['mess'] = '<p class="nasa-error">';
|
|
$res['mess'] .= 'file: ' . ELESSI_ADMIN_PATH . 'importer/data-import/datas/data_Part_0' . $partial . '_of_' . ELESSI_IMPORT_TOTAL . '.xml is not exists';
|
|
$res['mess'] .= '</p>';
|
|
$res['nofile'] = 'true';
|
|
}
|
|
|
|
$res['end'] = 1;
|
|
die(json_encode($res));
|
|
}
|
|
}
|
|
}
|
|
|
|
$res['mess'] = '';
|
|
$res['end'] = 0;
|
|
|
|
die(json_encode($res));
|
|
}
|
|
|
|
/**
|
|
* Import Widgets Sidebar
|
|
*/
|
|
if (isset($_REQUEST['action']) && 'nasa_import_widgets_sidebar' == $_REQUEST['action']) {
|
|
require_once ELESSI_ADMIN_PATH . 'importer/nasa-sidebars-widgets.php';
|
|
}
|
|
add_action('wp_ajax_nasa_import_widgets_sidebar', 'elessi_import_widgets_sidebar');
|
|
function elessi_import_widgets_sidebar() {
|
|
try {
|
|
$widget_data = elessi_sidebars_widgets_import();
|
|
|
|
/**
|
|
* Sidebars Widgets
|
|
*/
|
|
update_option('sidebars_widgets', $widget_data['sidebars_widgets'], true);
|
|
|
|
/**
|
|
* Setting Widgets
|
|
*/
|
|
foreach ($widget_data['widgets'] as $key => $value) {
|
|
update_option($key, $value, true);
|
|
}
|
|
} catch (Exception $exc) {
|
|
die('0');
|
|
}
|
|
|
|
die('1');
|
|
}
|
|
|
|
/**
|
|
* Upload Image from URL
|
|
*
|
|
* @param type $url
|
|
* @param type $default_id
|
|
* @param type $args
|
|
* @return type
|
|
*/
|
|
function elessi_import_upload($url = '', $default_id = 0, $args = array()) {
|
|
if (isset($args['post_name'])) {
|
|
$post = get_posts(array(
|
|
'name' => $args['post_name'],
|
|
'posts_per_page' => 1,
|
|
'post_type' => 'attachment'
|
|
));
|
|
|
|
if ($post && isset($post[0]->ID)) {
|
|
return $post[0]->ID;
|
|
}
|
|
}
|
|
|
|
$url = ELESSI_DOMAIN . $url;
|
|
$file_name = basename($url);
|
|
|
|
$upload_date = gmdate('Y-m-d H:i:s');
|
|
|
|
$post = array(
|
|
// 'import_id' => $post['post_id'],
|
|
'post_author' => (int) get_current_user_id(),
|
|
'post_date' => $upload_date,
|
|
'post_date_gmt' => $upload_date,
|
|
'post_modified' => $upload_date,
|
|
'post_modified_gmt' => $upload_date,
|
|
'post_title' => isset($args['post_title']) ? $args['post_title'] : md5($file_name),
|
|
'post_name' => isset($args['post_name']) ? $args['post_name'] : md5($file_name),
|
|
'post_content' => '',
|
|
'post_excerpt' => '',
|
|
'post_status' => 'inherit',
|
|
'post_type' => 'attachment',
|
|
'comment_status' => 'closed',
|
|
'ping_status' => 'closed',
|
|
'guid' => '',
|
|
'post_parent' => '0',
|
|
'menu_order' => '0',
|
|
'post_password' => ''
|
|
);
|
|
|
|
$upload = wp_upload_bits($file_name, 0, '', $upload_date);
|
|
|
|
if ($upload['error']) {
|
|
echo 'upload_dir_error';
|
|
return $default_id;
|
|
}
|
|
|
|
// fetch the remote url and write it to the placeholder file
|
|
$remote_response = wp_safe_remote_get($url, array(
|
|
'timeout' => 300,
|
|
'stream' => true,
|
|
'filename' => $upload['file'],
|
|
));
|
|
|
|
$headers = wp_remote_retrieve_headers($remote_response);
|
|
|
|
// request failed
|
|
if (!$headers) {
|
|
@unlink($upload['file']);
|
|
|
|
return $default_id;
|
|
}
|
|
|
|
$filesize = filesize($upload['file']);
|
|
|
|
// Remote file is incorrect size
|
|
if (isset($headers['content-length']) && $filesize != $headers['content-length']) {
|
|
@unlink($upload['file']);
|
|
|
|
return $default_id;
|
|
}
|
|
|
|
// Zero size file downloaded
|
|
if (0 == $filesize) {
|
|
@unlink($upload['file']);
|
|
|
|
return $default_id;
|
|
}
|
|
|
|
if (is_wp_error($upload)) {
|
|
return $default_id;
|
|
}
|
|
|
|
$info = wp_check_filetype($upload['file']);
|
|
|
|
if ($info) {
|
|
$post['post_mime_type'] = $info['type'];
|
|
} else {
|
|
@unlink($upload['file']);
|
|
|
|
return $default_id;
|
|
}
|
|
|
|
$post['guid'] = $upload['url'];
|
|
|
|
// as per wp-admin/includes/upload.php
|
|
$post_id = wp_insert_attachment($post, $upload['file']);
|
|
wp_update_attachment_metadata($post_id, wp_generate_attachment_metadata($post_id, $upload['file']));
|
|
|
|
return $post_id;
|
|
}
|
|
|
|
/**
|
|
* Brands String
|
|
*
|
|
* @return type
|
|
*/
|
|
function elessi_imp_brands_str() {
|
|
$brand_1 = elessi_import_upload('/wp-content/uploads/2017/09/brand-1.jpg', '3074', array(
|
|
'post_title' => 'Brand IMG 1',
|
|
'post_name' => 'brand-1',
|
|
));
|
|
$brand_2 = elessi_import_upload('/wp-content/uploads/2017/09/brand-2.jpg', '3074', array(
|
|
'post_title' => 'Brand IMG 2',
|
|
'post_name' => 'brand-2',
|
|
));
|
|
$brand_3 = elessi_import_upload('/wp-content/uploads/2017/09/brand-3.jpg', '3074', array(
|
|
'post_title' => 'Brand IMG 3',
|
|
'post_name' => 'brand-3',
|
|
));
|
|
$brand_4 = elessi_import_upload('/wp-content/uploads/2017/09/brand-4.jpg', '3074', array(
|
|
'post_title' => 'Brand IMG 4',
|
|
'post_name' => 'brand-4',
|
|
));
|
|
$brand_5 = elessi_import_upload('/wp-content/uploads/2017/09/brand-5.jpg', '3074', array(
|
|
'post_title' => 'Brand IMG 5',
|
|
'post_name' => 'brand-5',
|
|
));
|
|
$brand_6 = elessi_import_upload('/wp-content/uploads/2017/09/brand-6.jpg', '3074', array(
|
|
'post_title' => 'Brand IMG 6',
|
|
'post_name' => 'brand-6',
|
|
));
|
|
|
|
return $brand_1 . ',' . $brand_2 . ',' . $brand_3 . ',' . $brand_4 . ',' . $brand_5 . ',' . $brand_6 . ',' . $brand_1;
|
|
}
|
|
|
|
/**
|
|
* Brands String
|
|
*
|
|
* @return type
|
|
*/
|
|
function elessi_imp_brands_v2_str() {
|
|
$brand_1 = elessi_import_upload('/wp-content/uploads/2023/10/brand-ver.jpg', '3074', array(
|
|
'post_title' => 'Brand v2 IMG 1',
|
|
'post_name' => 'brand-v2-1',
|
|
));
|
|
$brand_2 = elessi_import_upload('/wp-content/uploads/2023/10/brand-rb.jpg', '3074', array(
|
|
'post_title' => 'Brand v2 IMG 2',
|
|
'post_name' => 'brand-v2-2',
|
|
));
|
|
$brand_3 = elessi_import_upload('/wp-content/uploads/2023/10/brand-prada.jpg', '3074', array(
|
|
'post_title' => 'Brand v2 IMG 3',
|
|
'post_name' => 'brand-v2-3',
|
|
));
|
|
$brand_4 = elessi_import_upload('/wp-content/uploads/2023/10/brand-pola.jpg', '3074', array(
|
|
'post_title' => 'Brand v2 IMG 4',
|
|
'post_name' => 'brand-v2-4',
|
|
));
|
|
$brand_5 = elessi_import_upload('/wp-content/uploads/2023/10/brand-persol.jpg', '3074', array(
|
|
'post_title' => 'Brand v2 IMG 5',
|
|
'post_name' => 'brand-v2-5',
|
|
));
|
|
$brand_6 = elessi_import_upload('/wp-content/uploads/2023/10/brand-ceni.jpg', '3074', array(
|
|
'post_title' => 'Brand v2 IMG 6',
|
|
'post_name' => 'brand-v2-6',
|
|
));
|
|
|
|
return $brand_1 . ',' . $brand_2 . ',' . $brand_3 . ',' . $brand_4 . ',' . $brand_5 . ',' . $brand_6 . ',' . $brand_1;
|
|
}
|
|
|
|
/**
|
|
* Brands dark String
|
|
*
|
|
* @return type
|
|
*/
|
|
function elessi_imp_brands_dark_str() {
|
|
$brand_1 = elessi_import_upload('/wp-content/uploads/2016/06/watches_dark_brand7.png', '3074', array(
|
|
'post_title' => 'Brand Dark 7',
|
|
'post_name' => 'brand-dark-7',
|
|
));
|
|
$brand_2 = elessi_import_upload('/wp-content/uploads/2016/06/watches_dark_brand2.png', '3074', array(
|
|
'post_title' => 'Brand Dark 2',
|
|
'post_name' => 'brand-dark-2',
|
|
));
|
|
$brand_3 = elessi_import_upload('/wp-content/uploads/2016/06/watches_dark_brand3.png', '3074', array(
|
|
'post_title' => 'Brand Dark 3',
|
|
'post_name' => 'brand-dark-3',
|
|
));
|
|
$brand_4 = elessi_import_upload('/wp-content/uploads/2016/06/watches_dark_brand4.png', '3074', array(
|
|
'post_title' => 'Brand Dark 4',
|
|
'post_name' => 'brand-dark-4',
|
|
));
|
|
$brand_5 = elessi_import_upload('/wp-content/uploads/2016/06/watches_dark_brand5.png', '3074', array(
|
|
'post_title' => 'Brand Dark 5',
|
|
'post_name' => 'brand-dark-5',
|
|
));
|
|
$brand_6 = elessi_import_upload('/wp-content/uploads/2016/06/watches_dark_brand6.png', '3074', array(
|
|
'post_title' => 'Brand Dark 6',
|
|
'post_name' => 'brand-dark-6',
|
|
));
|
|
$brand_7 = elessi_import_upload('/wp-content/uploads/2016/06/watches_dark_brand1.png', '3074', array(
|
|
'post_title' => 'Brand Dark 1',
|
|
'post_name' => 'brand-dark-1',
|
|
));
|
|
|
|
return $brand_1 . ',' . $brand_2 . ',' . $brand_3 . ',' . $brand_4 . ',' . $brand_5 . ',' . $brand_6 . ',' . $brand_7;
|
|
}
|
|
|
|
/**
|
|
* Import Elementor Ext page
|
|
*/
|
|
add_action('wp_ajax_nasa_import_elm_ext', 'elessi_import_elm_ext');
|
|
function elessi_import_elm_ext() {
|
|
if (!class_exists('Elessi_DF_Page_Importer')) {
|
|
require_once ELESSI_ADMIN_PATH . 'importer/nasa-default-page.php';
|
|
}
|
|
|
|
/**
|
|
* Footer Builder WPB
|
|
*/
|
|
if (class_exists('Vc_Manager')) {
|
|
$wpb_footers = array(
|
|
'footer-light-2-bg',
|
|
'footer-drone-camera',
|
|
'footer-gym-nutrition',
|
|
'footer-hand-tool',
|
|
'footer-toys'
|
|
);
|
|
|
|
foreach ($wpb_footers as $file) {
|
|
$file = trim($file);
|
|
Elessi_DF_Page_Importer::nasa_push_data_from_file('footer', $file);
|
|
}
|
|
|
|
/**
|
|
* Sattic Block of WPB
|
|
*/
|
|
$wpb_st_blocks = array(
|
|
'drone-block-beside-header',
|
|
'hand-tool-block-beside-header',
|
|
'drone-popup-block',
|
|
'exit-intent-popup'
|
|
);
|
|
|
|
foreach ($wpb_st_blocks as $file) {
|
|
$file = trim($file);
|
|
Elessi_DF_Page_Importer::nasa_push_data_from_file('stblock', $file);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Not active ELEMENTOR Plugin
|
|
*/
|
|
if (!NASA_ELEMENTOR_ACTIVE) {
|
|
die('1');
|
|
}
|
|
|
|
try {
|
|
/**
|
|
* Elementor Header & Footer Builder Plugin
|
|
*/
|
|
if (function_exists('hfe_init')) {
|
|
/**
|
|
* Footer Builder of HFE
|
|
*/
|
|
$elm_footers = array(
|
|
'footer-light',
|
|
'footer-light-2',
|
|
'footer-light-2-width-1300',
|
|
'footer-light-2-width-1400',
|
|
'footer-light-2-width-1600',
|
|
'footer-light-2-bg',
|
|
'footer-light-3',
|
|
'footer-dark',
|
|
'footer-dark-2',
|
|
'footer-auto-parts-light',
|
|
'footer-auto-parts-dark',
|
|
'footer-mobile',
|
|
'footer-drone-camera',
|
|
'footer-gym-nutrition',
|
|
'footer-toys',
|
|
'footer-hand-tool'
|
|
);
|
|
|
|
foreach ($elm_footers as $file) {
|
|
$file = trim($file);
|
|
Elessi_DF_Page_Importer::nasa_push_data_from_file('hfe', $file);
|
|
}
|
|
|
|
/**
|
|
* Header Builder of HFE
|
|
*/
|
|
$elm_headers = array(
|
|
'header-builder-1'
|
|
);
|
|
|
|
foreach ($elm_headers as $file) {
|
|
$file = trim($file);
|
|
Elessi_DF_Page_Importer::nasa_push_data_from_file('hfe-header', $file);
|
|
}
|
|
|
|
/**
|
|
* Custom Block of HFE
|
|
*/
|
|
$elm_ct_blocks = array(
|
|
'review-from-customers',
|
|
'size-guide',
|
|
'delivery-return',
|
|
'exit-intent-popup',
|
|
'drone-block-beside-header',
|
|
'hand-tool-block-beside-header',
|
|
'drone-popup-block'
|
|
);
|
|
|
|
foreach ($elm_ct_blocks as $file) {
|
|
$file = trim($file);
|
|
Elessi_DF_Page_Importer::nasa_push_data_from_file('ctblock', $file);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Others Pages
|
|
*/
|
|
$elm_pages = array(
|
|
'contact-us',
|
|
'about-us'
|
|
);
|
|
|
|
if (!empty($elm_pages)) {
|
|
/**
|
|
* Pages Selected - Elementor
|
|
*/
|
|
foreach ($elm_pages as $file) {
|
|
$file = trim($file);
|
|
Elessi_DF_Page_Importer::nasa_push_data_from_file('elm', $file);
|
|
}
|
|
}
|
|
} catch (Exception $exc) {
|
|
die($exc->getMessage());
|
|
}
|
|
|
|
die('1');
|
|
}
|
|
|
|
/**
|
|
* Import Homes
|
|
*/
|
|
add_action('wp_ajax_nasa_import_home', 'elessi_import_home');
|
|
function elessi_import_home() {
|
|
$elm_home = isset($_POST['elm']) && $_POST['elm'] ? $_POST['elm'] : false;
|
|
$wpb_home = isset($_POST['wpb']) && $_POST['wpb'] ? $_POST['wpb'] : false;
|
|
|
|
if (!class_exists('Elessi_DF_Page_Importer')) {
|
|
require_once ELESSI_ADMIN_PATH . 'importer/nasa-default-page.php';
|
|
}
|
|
|
|
try {
|
|
/**
|
|
* Push data Elementor pages
|
|
*/
|
|
if ($elm_home) {
|
|
$file = trim($elm_home);
|
|
Elessi_DF_Page_Importer::nasa_push_data_from_file('elm', $file, true);
|
|
}
|
|
|
|
/**
|
|
* Push data WPBakery page
|
|
*/
|
|
if ($wpb_home) {
|
|
$file = trim($wpb_home);
|
|
Elessi_DF_Page_Importer::nasa_push_data_from_file('wpb', $file, true);
|
|
}
|
|
} catch (Exception $exc) {
|
|
die($exc->getMessage());
|
|
}
|
|
|
|
die('1');
|
|
}
|
|
|
|
/**
|
|
* Import Revslider
|
|
*/
|
|
// add_action('wp_ajax_nasa_import_revsliders', 'elessi_import_revsliders');
|
|
/* function elessi_import_revsliders() {
|
|
if (!class_exists('RevSliderSliderImport')) {
|
|
die('0');
|
|
}
|
|
|
|
$zips = glob(ELESSI_ADMIN_PATH . 'importer/data-import/revsliders/*.zip');
|
|
|
|
if (empty($zips)) {
|
|
die('0');
|
|
}
|
|
|
|
try {
|
|
foreach ($zips as $zip) {
|
|
$import = new RevSliderSliderImport();
|
|
$import->import_slider(true, $zip, false, false, true, true);
|
|
}
|
|
} catch (Exception $exc) {
|
|
echo $exc->getMessage();
|
|
die('0');
|
|
}
|
|
|
|
die('1');
|
|
} */
|
|
|
|
add_action('wp_ajax_nasa_import_revslider', 'elessi_import_revslider');
|
|
function elessi_import_revslider() {
|
|
if (!class_exists('RevSliderSliderImport') || !isset($_POST['revslider'])) {
|
|
die('0');
|
|
}
|
|
|
|
$zip_url = ELESSI_REPO . '/revs/' . $_POST['revslider'];
|
|
|
|
$upload_dir = wp_upload_dir();
|
|
$revs_temp = $upload_dir['basedir'] . '/installer_temp';
|
|
|
|
global $wp_filesystem;
|
|
|
|
// Initialize the WP filesystem, no more using 'file-put-contents' function
|
|
if (empty($wp_filesystem)) {
|
|
require_once ABSPATH . '/wp-admin/includes/file.php';
|
|
WP_Filesystem();
|
|
}
|
|
|
|
/**
|
|
* Create temp dir
|
|
*/
|
|
if (!$wp_filesystem->is_dir($revs_temp)) {
|
|
if (!wp_mkdir_p($revs_temp)){
|
|
echo 'Cannot create temporary folder "' . $revs_temp . '".';
|
|
die('0');
|
|
}
|
|
}
|
|
|
|
$zip = $revs_temp . '/' . $_POST['revslider'];
|
|
|
|
try {
|
|
$file_contents = file_get_contents($zip_url);
|
|
if ($file_contents === false) {
|
|
echo 'Unable to download file from "' . $zip_url . '".';
|
|
die('0');
|
|
}
|
|
|
|
file_put_contents($zip, $file_contents);
|
|
if (!$wp_filesystem->is_file($zip)) {
|
|
echo 'File "' . $zip . '" not exists.';
|
|
die('0');
|
|
}
|
|
|
|
$import = new RevSliderSliderImport();
|
|
$import->import_slider(true, $zip, false, false, true, true);
|
|
} catch (Exception $exc) {
|
|
echo $exc->getMessage();
|
|
die('0');
|
|
} finally {
|
|
// Delete zip
|
|
if (file_exists($zip)) {
|
|
unlink($zip);
|
|
}
|
|
}
|
|
|
|
die('1');
|
|
}
|
|
|
|
/**
|
|
* get Post by slug
|
|
*
|
|
* @global type $wpdb
|
|
* @param type $slug
|
|
* @param type $post_type
|
|
* @return type
|
|
*/
|
|
function elessi_import_get_post_by_slug($slug, $post_type) {
|
|
global $wpdb;
|
|
|
|
$sql = $wpdb->prepare(
|
|
'SELECT ID FROM ' . $wpdb->posts . ' WHERE post_name = %s AND post_type = %s',
|
|
$slug,
|
|
$post_type
|
|
);
|
|
|
|
$page = $wpdb->get_var($sql);
|
|
|
|
if ($page) {
|
|
return get_post($page);
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* Delete Default pages
|
|
*/
|
|
function elessi_import_delete_df_pages() {
|
|
$pages = array(
|
|
'sample-page',
|
|
'shop-2',
|
|
'my-account-2',
|
|
'cart',
|
|
'checkout-2'
|
|
);
|
|
|
|
foreach ($pages as $slug) {
|
|
$page = elessi_import_get_post_by_slug($slug, 'page');
|
|
|
|
if ($page) {
|
|
wp_delete_post($page->ID, true);
|
|
}
|
|
}
|
|
|
|
$checkout = elessi_import_get_post_by_slug('checkout', 'page');
|
|
if ($checkout) {
|
|
update_post_meta($checkout->ID, '_wp_page_template', 'page-checkout.php');
|
|
|
|
/**
|
|
* Remove Gutenberg content in checkout page
|
|
*/
|
|
$checkout_update = array(
|
|
'ID' => $checkout->ID,
|
|
'post_content' => '[woocommerce_checkout]',
|
|
);
|
|
|
|
wp_update_post($checkout_update);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Delete Default posts
|
|
*/
|
|
function elessi_import_delete_df_posts() {
|
|
$posts = array(
|
|
'hello-world'
|
|
);
|
|
|
|
foreach ($posts as $slug) {
|
|
$post = elessi_import_get_post_by_slug($slug, 'post');
|
|
|
|
if ($post) {
|
|
wp_delete_post($post->ID, true);
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Delete Default Contact Form
|
|
*/
|
|
function elessi_import_delete_df_contacts() {
|
|
if (class_exists('WPCF7_ContactForm')) {
|
|
global $wpdb;
|
|
|
|
$contacts = array(
|
|
'Contact form 1'
|
|
);
|
|
|
|
foreach ($contacts as $contact) {
|
|
$sql = $wpdb->prepare(
|
|
'SELECT ID FROM ' . $wpdb->posts . ' WHERE post_title = %s AND post_type = %s',
|
|
$contact,
|
|
WPCF7_ContactForm::post_type
|
|
);
|
|
|
|
$posts = $wpdb->get_results($sql);
|
|
|
|
if ($posts) {
|
|
foreach ($posts as $post) {
|
|
if (isset($post->ID)) {
|
|
wp_delete_post($post->ID, true);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* set Breadcrumb pages
|
|
*/
|
|
function elessi_import_breadcrumb_pages() {
|
|
$pages = array(
|
|
'shop' => 'on',
|
|
'my-account' => 'on',
|
|
'blog' => 'on',
|
|
'shopping-cart' => 'off',
|
|
'checkout' => 'off'
|
|
);
|
|
|
|
foreach ($pages as $slug => $value) {
|
|
$page = elessi_import_get_post_by_slug($slug, 'page');
|
|
|
|
if ($page) {
|
|
update_post_meta($page->ID, '_nasa_show_breadcrumb', $value);
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Global Options
|
|
*/
|
|
add_action('wp_ajax_nasa_global_options', 'elessi_global_options');
|
|
function elessi_global_options() {
|
|
/**
|
|
* Setting Main Menu
|
|
*/
|
|
$locations = get_theme_mod('nav_menu_locations'); // registered menu locations in theme
|
|
$menus = wp_get_nav_menus(); // registered menus
|
|
|
|
if ($menus) {
|
|
foreach ($menus as $menu) {
|
|
switch ($menu->name) {
|
|
/**
|
|
* Main Menu
|
|
*/
|
|
case 'Main Menu':
|
|
$locations['primary'] = $menu->term_id;
|
|
break;
|
|
|
|
/**
|
|
* Vertical Menu
|
|
*/
|
|
case 'Vertical Menu':
|
|
$locations['vetical-menu'] = $menu->term_id;
|
|
break;
|
|
|
|
default: break;
|
|
}
|
|
}
|
|
}
|
|
|
|
set_theme_mod('nav_menu_locations', $locations); // set menus to locations
|
|
|
|
/**
|
|
* Setting for WooCommerce
|
|
*/
|
|
if (class_exists('WooCommerce')) {
|
|
// Set pages
|
|
$woopages = array(
|
|
'woocommerce_shop_page_id' => 'shop', // Shop page
|
|
'woocommerce_cart_page_id' => 'shopping-cart', // Cart page
|
|
'woocommerce_checkout_page_id' => 'checkout', // Checkout page
|
|
'woocommerce_myaccount_page_id' => 'my-account' // My Account page
|
|
);
|
|
|
|
foreach ($woopages as $woo_page_option => $woo_page_slug) {
|
|
$woopage = elessi_import_get_post_by_slug($woo_page_slug, 'page');
|
|
if ($woopage && isset($woopage->ID)) {
|
|
update_option($woo_page_option, $woopage->ID);
|
|
}
|
|
}
|
|
|
|
// default sorting
|
|
update_option('woocommerce_default_catalog_orderby', 'menu_order');
|
|
|
|
// Shipping Sample
|
|
elessi_insert_shipping_data_sample();
|
|
|
|
// We no longer need to install pages
|
|
delete_option('_wc_needs_pages');
|
|
delete_transient('_wc_activation_redirect');
|
|
|
|
/**
|
|
* Delete All transients product
|
|
*/
|
|
$transients_to_clear = array(
|
|
'wc_products_onsale',
|
|
'wc_featured_products',
|
|
'wc_outofstock_count',
|
|
'wc_low_stock_count',
|
|
);
|
|
|
|
foreach ($transients_to_clear as $transient) {
|
|
delete_transient($transient);
|
|
}
|
|
|
|
/**
|
|
* Clear product transients
|
|
*/
|
|
wc_delete_product_transients();
|
|
|
|
/**
|
|
* Clear Expired transients
|
|
*/
|
|
wc_delete_expired_transients();
|
|
|
|
/**
|
|
* Update Lookup tables
|
|
*/
|
|
wc_update_product_lookup_tables();
|
|
|
|
/**
|
|
* Update Recount all Terms
|
|
*/
|
|
wc_recount_all_terms();
|
|
}
|
|
|
|
/**
|
|
* Blog page
|
|
*/
|
|
update_option('show_on_front', 'page');
|
|
$blog = elessi_import_get_post_by_slug('blog', 'page');
|
|
if ($blog) {
|
|
update_option('page_for_posts', $blog->ID);
|
|
}
|
|
|
|
/**
|
|
* Delete default pages
|
|
*/
|
|
elessi_import_delete_df_pages();
|
|
|
|
/**
|
|
* Delete default posts
|
|
*/
|
|
elessi_import_delete_df_posts();
|
|
|
|
/**
|
|
* Delete default contacts
|
|
*/
|
|
elessi_import_delete_df_contacts();
|
|
|
|
/**
|
|
* Enable breadcrumb pages
|
|
*/
|
|
elessi_import_breadcrumb_pages();
|
|
|
|
/**
|
|
* Update UX Attributes
|
|
*/
|
|
elessi_update_ux_attrs();
|
|
|
|
/**
|
|
* Set Default Options
|
|
*/
|
|
elessi_theme_set_options_default();
|
|
|
|
die('1');
|
|
}
|
|
|
|
/**
|
|
* Insert Shipping Sample
|
|
*
|
|
* @global type $wpdb
|
|
* @return int
|
|
*/
|
|
function elessi_insert_shipping_data_sample() {
|
|
global $wpdb;
|
|
|
|
$zone_table = $wpdb->prefix . 'woocommerce_shipping_zones';
|
|
$zone_table_methods = $wpdb->prefix . 'woocommerce_shipping_zone_methods';
|
|
|
|
/**
|
|
* Insert Shipping Zone
|
|
*/
|
|
$insert = $wpdb->insert(
|
|
$zone_table,
|
|
array(
|
|
'zone_name' => 'Every Where',
|
|
'zone_order' => 0
|
|
)
|
|
);
|
|
|
|
if (false === $insert) {
|
|
return false;
|
|
}
|
|
|
|
$zone_id = $wpdb->insert_id;
|
|
|
|
/**
|
|
* Insert Shipping Zone Method
|
|
*/
|
|
$insert_method = $wpdb->insert(
|
|
$zone_table_methods,
|
|
array(
|
|
'zone_id' => $zone_id,
|
|
'method_id' => 'free_shipping',
|
|
'method_order' => 1,
|
|
'is_enabled' => 1
|
|
)
|
|
);
|
|
|
|
if (false === $insert_method) {
|
|
return false;
|
|
}
|
|
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* Attributes Color, Size;
|
|
*/
|
|
function elessi_update_ux_attrs() {
|
|
global $wpdb;
|
|
|
|
/**
|
|
* Attribute Table
|
|
*/
|
|
$attrs_table = $wpdb->prefix . 'woocommerce_attribute_taxonomies';
|
|
|
|
/**
|
|
* Update Attribute Label - Size
|
|
*/
|
|
$wpdb->update(
|
|
$attrs_table,
|
|
array('attribute_type' => 'nasa_label', 'attribute_public' => 0),
|
|
array('attribute_name' => 'size')
|
|
);
|
|
|
|
/**
|
|
* Update Attribute Color
|
|
*/
|
|
$wpdb->update(
|
|
$attrs_table,
|
|
array('attribute_type' => 'nasa_color', 'attribute_public' => 0),
|
|
array('attribute_name' => 'color')
|
|
);
|
|
|
|
/**
|
|
* Update Color for terms
|
|
*/
|
|
$terms = get_terms(array(
|
|
'taxonomy' => 'pa_color',
|
|
'hide_empty' => false
|
|
));
|
|
|
|
$codes = array(
|
|
'black' => '#000000',
|
|
'blue' => '#1e73be',
|
|
'green' => '#81d742',
|
|
'orange' => '#dd9933',
|
|
'pink' => '#ffc0cb',
|
|
'red' => '#dd3333',
|
|
'yellow' => '#eeee22'
|
|
);
|
|
|
|
if (!empty($terms)) {
|
|
foreach ($terms as $term) {
|
|
$color_code = isset($codes[$term->slug]) ? $codes[$term->slug] : $term->slug;
|
|
update_term_meta($term->term_id, 'nasa_color', $color_code);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Update Options wc_attribute_taxonomies
|
|
*/
|
|
$attrs = $wpdb->get_results('SELECT * FROM ' . $attrs_table);
|
|
if ($attrs) {
|
|
update_option('_transient_wc_attribute_taxonomies', $attrs, true);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* HFE Get Footer Id
|
|
*
|
|
* @param type $slug
|
|
* @return type
|
|
*/
|
|
function elessi_elm_fid_by_slug($slug) {
|
|
if (!function_exists('hfe_init')) {
|
|
return '';
|
|
}
|
|
|
|
$args = array(
|
|
'name' => $slug,
|
|
'post_type' => 'elementor-hf',
|
|
'post_status' => 'publish',
|
|
'posts_per_page' => 1
|
|
);
|
|
|
|
$footer_posts = get_posts($args);
|
|
$footer_hfe = isset($footer_posts[0]) ? $footer_posts[0] : false;
|
|
|
|
return isset($footer_hfe->ID) ? $footer_hfe->ID : '';
|
|
}
|
|
|
|
/**
|
|
* Set Default Options
|
|
*/
|
|
function elessi_theme_set_options_default() {
|
|
$options_init = get_option('nasatheme_options') !== 'inited' ? false : true;
|
|
|
|
defined('NASA_ELEMENTOR_ACTIVE') or define('NASA_ELEMENTOR_ACTIVE', defined('ELEMENTOR_PATH') && ELEMENTOR_PATH);
|
|
|
|
set_theme_mod('transition_load', 'crazy');
|
|
|
|
set_theme_mod('type_font_select', 'google');
|
|
|
|
set_theme_mod('type_headings', 'Jost');
|
|
set_theme_mod('type_texts', 'Jost');
|
|
set_theme_mod('type_nav', 'Jost');
|
|
set_theme_mod('type_alt', 'Jost');
|
|
set_theme_mod('type_banner', 'Jost');
|
|
set_theme_mod('type_price', 'Jost');
|
|
|
|
set_theme_mod('type_headings_rtl', 'Jost');
|
|
set_theme_mod('type_texts_rtl', 'Jost');
|
|
set_theme_mod('type_nav_rtl', 'Jost');
|
|
set_theme_mod('type_alt_rtl', 'Jost');
|
|
set_theme_mod('type_banner_rtl', 'Jost');
|
|
set_theme_mod('type_price_rtl', 'Jost');
|
|
|
|
set_theme_mod('max_font_weight', '500');
|
|
|
|
if (!$options_init) {
|
|
set_theme_mod('header-type', '1');
|
|
}
|
|
|
|
set_theme_mod('topbar_content', 'topbar');
|
|
|
|
set_theme_mod('f_buildin', '0');
|
|
|
|
if (NASA_ELEMENTOR_ACTIVE) {
|
|
update_option('elementor_load_fa4_shim', '');
|
|
|
|
/**
|
|
* Set Footer - HFE plugin
|
|
*/
|
|
if (function_exists('hfe_init')) {
|
|
if (!$options_init) {
|
|
set_theme_mod('footer_mode', 'builder-e');
|
|
set_theme_mod('footer_elm', elessi_elm_fid_by_slug('hfe-footer-light-2'));
|
|
set_theme_mod('footer_elm_mobile', elessi_elm_fid_by_slug('hfe-footer-mobile'));
|
|
}
|
|
|
|
$ctblock_id = elessi_elm_fid_by_slug('hfe-reviews-from-customers');
|
|
$ctblock_id = $ctblock_id ? 'nshfe.' . $ctblock_id : '';
|
|
if ($ctblock_id) {
|
|
set_theme_mod('after_cart_table', $ctblock_id);
|
|
}
|
|
|
|
$ctblock_id = elessi_elm_fid_by_slug('hfe-size-guide');
|
|
$ctblock_id = $ctblock_id ? 'nshfe.' . $ctblock_id : '';
|
|
if ($ctblock_id) {
|
|
set_theme_mod('size_guide_product', $ctblock_id);
|
|
}
|
|
|
|
$ctblock_id = elessi_elm_fid_by_slug('hfe-delivery-return');
|
|
$ctblock_id = $ctblock_id ? 'nshfe.' . $ctblock_id : '';
|
|
if ($ctblock_id) {
|
|
set_theme_mod('delivery_return_single_product', $ctblock_id);
|
|
}
|
|
|
|
$ctblock_id = elessi_elm_fid_by_slug('hfe-exit-intent-popup');
|
|
$ctblock_id = $ctblock_id ? 'nshfe.' . $ctblock_id : '';
|
|
if ($ctblock_id) {
|
|
set_theme_mod('ns_popup_exit_intent', '1');
|
|
set_theme_mod('ns_popup_exit_intent_ct', $ctblock_id);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Disable Elementor's mini-cart, and make Elementor inherit the mini-cart from theme.
|
|
*/
|
|
update_option('elementor_use_mini_cart_template', 'no');
|
|
|
|
/**
|
|
* Disable Elementor's Default Colors, and make Elementor inherit the colors from theme.
|
|
*/
|
|
update_option('elementor_disable_color_schemes', 'yes');
|
|
|
|
/**
|
|
* Disable Elementor's Default Fonts, and make Elementor inherit the fonts from theme.
|
|
*/
|
|
update_option('elementor_disable_typography_schemes', 'yes');
|
|
|
|
/**
|
|
* Enable live search widget WP
|
|
*/
|
|
update_option('elementor_experiment-e_hidden_wordpress_widgets', 'inactive');
|
|
|
|
/**
|
|
* Enable upload json file template
|
|
*/
|
|
update_option('elementor_unfiltered_files_upload', '1');
|
|
|
|
/**
|
|
* Disable Elementor Light-box feature
|
|
*/
|
|
$kit_id = get_option('elementor_active_kit');
|
|
|
|
if ($kit_id) {
|
|
$kit_settings = get_post_meta($kit_id, '_elementor_page_settings', true);
|
|
|
|
if (!empty($kit_settings)) {
|
|
$kit_settings['global_image_lightbox'] = '';
|
|
update_post_meta($kit_id, '_elementor_page_settings', $kit_settings);
|
|
} else {
|
|
$kit_settings = array(
|
|
'system_colors' => array(
|
|
0 => array(
|
|
'_id' => 'primary',
|
|
'title' => 'Primary',
|
|
'color' => '#6EC1E4',
|
|
),
|
|
1 => array(
|
|
'_id' => 'secondary',
|
|
'title' => 'Secondary',
|
|
'color' => '#54595F',
|
|
),
|
|
2 => array(
|
|
'_id' => 'text',
|
|
'title' => 'Text',
|
|
'color' => '#555',
|
|
),
|
|
3 => array(
|
|
'_id' => 'accent',
|
|
'title' => 'Accent',
|
|
'color' => '#61CE70',
|
|
),
|
|
),
|
|
'custom_colors' => array(),
|
|
'system_typography' => array(
|
|
0 => array(
|
|
'_id' => 'primary',
|
|
'title' => 'Primary',
|
|
'typography_typography' => 'custom',
|
|
'typography_font_family' => 'Jost',
|
|
'typography_font_weight' => '500',
|
|
),
|
|
1 => array(
|
|
'_id' => 'secondary',
|
|
'title' => 'Secondary',
|
|
'typography_typography' => 'custom',
|
|
'typography_font_family' => 'Jost',
|
|
'typography_font_weight' => '400',
|
|
),
|
|
2 => array(
|
|
'_id' => 'text',
|
|
'title' => 'Text',
|
|
'typography_typography' => 'custom',
|
|
'typography_font_family' => 'Jost',
|
|
'typography_font_weight' => '400',
|
|
),
|
|
3 => array(
|
|
'_id' => 'accent',
|
|
'title' => 'Accent',
|
|
'typography_typography' => 'custom',
|
|
'typography_font_family' => 'Jost',
|
|
'typography_font_weight' => '500',
|
|
),
|
|
),
|
|
'custom_typography' => array(),
|
|
'default_generic_fonts' => 'Jost',
|
|
'site_name' => get_option('blogname'),
|
|
'site_description' => get_option('blogdescription'),
|
|
'page_title_selector' => 'h1.entry-title',
|
|
'global_image_lightbox' => '',
|
|
'viewport_md' => 768,
|
|
'viewport_lg' => 1025,
|
|
'container_width' => array(
|
|
'unit' => 'px',
|
|
'size' => '1200',
|
|
'sizes' => array()
|
|
),
|
|
);
|
|
|
|
update_post_meta($kit_id, '_elementor_page_settings', $kit_settings);
|
|
}
|
|
}
|
|
} else {
|
|
if (!$options_init) {
|
|
set_theme_mod('footer_mode', 'builder');
|
|
set_theme_mod('footer-type', 'footer-light-2');
|
|
set_theme_mod('footer-mobile', 'footer-mobile');
|
|
}
|
|
|
|
set_theme_mod('size_guide_product', 'size-guide');
|
|
set_theme_mod('delivery_return_single_product', 'delivery-return');
|
|
|
|
set_theme_mod('ns_popup_exit_intent', '1');
|
|
set_theme_mod('ns_popup_exit_intent_ct', 'wpb-exit-intent-popup');
|
|
}
|
|
|
|
set_theme_mod('style_quickview', 'sidebar');
|
|
set_theme_mod('quick_view_item_thumb', '2-items');
|
|
set_theme_mod('hotkeys_search', 'Sweater, Jacket, Shirt ...');
|
|
set_theme_mod('sp_search_sku', '1');
|
|
set_theme_mod('popkeys_search', 'Sweater, Jacket, Shirt');
|
|
set_theme_mod('show_icon_cat_top', 'show-in-shop');
|
|
set_theme_mod('checkout_layout', 'modern');
|
|
set_theme_mod('search_layout', 'modern');
|
|
|
|
set_theme_mod('products_pr_page', 20);
|
|
// update_option('posts_per_page', 20);
|
|
|
|
set_theme_mod('multicheck_options_cols_display', array(
|
|
"2-cols" => 0,
|
|
"3-cols" => 1,
|
|
"4-cols" => 1,
|
|
"5-cols" => 1,
|
|
"6-cols" => 0,
|
|
"list" => 1,
|
|
"list-2cols" => 0
|
|
));
|
|
|
|
/**
|
|
* Update Billing, Shipping First
|
|
*/
|
|
update_option('woocommerce_ship_to_destination', 'billing', 'no');
|
|
|
|
/**
|
|
* Color Badges
|
|
*/
|
|
set_theme_mod('featured_badge', '1');
|
|
set_theme_mod('color_hot_label', '#e42e2d');
|
|
set_theme_mod('color_deal_label', '#dd9933');
|
|
set_theme_mod('color_sale_label', '#83b738');
|
|
set_theme_mod('color_variants_label', '#1e73be');
|
|
set_theme_mod('color_bulk_label', '#00a32a');
|
|
|
|
set_theme_mod('limit_widgets_show_more', '5');
|
|
set_theme_mod('products_per_row', '4-cols');
|
|
set_theme_mod('products_per_row_tablet', '3-cols');
|
|
set_theme_mod('products_per_row_small', '2-cols');
|
|
|
|
set_theme_mod('label_attribute_single', '1');
|
|
|
|
/**
|
|
* Product Group
|
|
*/
|
|
set_theme_mod('nasa_custom_categories_slug', 'product_group');
|
|
update_option('nasa_custom_categories_slug', 'product_group', 'no');
|
|
|
|
/**
|
|
* WooCommerce Advance
|
|
*/
|
|
set_theme_mod('ask_a_question', '3282');
|
|
set_theme_mod('request_a_callback', '3286');
|
|
|
|
set_theme_mod('after_single_addtocart_form', 'trust-single-product');
|
|
|
|
set_theme_mod('button_radius', '5');
|
|
// set_theme_mod('button_border', '1');
|
|
set_theme_mod('input_radius', '5');
|
|
|
|
// Share Icons
|
|
set_theme_mod('social_icons', array(
|
|
"facebook" => true,
|
|
"twitter" => true,
|
|
"email" => true,
|
|
"pinterest" => true
|
|
));
|
|
|
|
// Follow Icons
|
|
set_theme_mod('facebook_url_follow', '#');
|
|
set_theme_mod('twitter_url_follow', '#');
|
|
set_theme_mod('pinterest_url_follow', '#');
|
|
set_theme_mod('instagram_url', '#');
|
|
|
|
set_theme_mod('enable_portfolio', '1');
|
|
set_theme_mod('portfolio_columns', '5-cols');
|
|
|
|
/**
|
|
* Default - Only Responsive Mode
|
|
*/
|
|
set_theme_mod('enable_nasa_mobile', '0');
|
|
set_theme_mod('mobile_layout', 'app');
|
|
set_theme_mod('single_product_mobile', '1');
|
|
|
|
set_theme_mod('effect_before_load', '0');
|
|
|
|
set_theme_mod('nasa_cache_mode', 'file');
|
|
set_theme_mod('nasa_cache_expire', '36000'); // Cache live 10 hours
|
|
|
|
/**
|
|
* Compare
|
|
*/
|
|
$yith_woocompare_fields_attr = array(
|
|
0 => 'image',
|
|
1 => 'title',
|
|
2 => 'price',
|
|
3 => 'add-to-cart',
|
|
4 => 'description',
|
|
5 => 'sku',
|
|
6 => 'stock',
|
|
7 => 'weight',
|
|
8 => 'dimensions',
|
|
// 9 => 'pa_color',
|
|
// 10 => 'pa_size'
|
|
);
|
|
update_option('yith_woocompare_fields_attrs', $yith_woocompare_fields_attr, true);
|
|
|
|
$yith_woocompare_fields = array(
|
|
'image' => 1,
|
|
'title' => 1,
|
|
'price' => 1,
|
|
'add-to-cart' => 1,
|
|
'description' => 1,
|
|
'sku' => 1,
|
|
'stock' => 1,
|
|
'weight' => 1,
|
|
'dimensions' => 1,
|
|
// 'pa_color' => 1,
|
|
// 'pa_size' => 1
|
|
);
|
|
update_option('yith_woocompare_fields', $yith_woocompare_fields, true);
|
|
|
|
update_option('yith_woocompare_compare_button_in_products_list', 'yes');
|
|
|
|
/**
|
|
* For Yith Wishlist
|
|
*/
|
|
update_option('yith_wcwl_show_on_loop', 'yes');
|
|
|
|
/**
|
|
* Enable WooCommerce Register form
|
|
*/
|
|
update_option('woocommerce_enable_myaccount_registration', 'yes');
|
|
|
|
/**
|
|
* Rebuild dynamic CSS
|
|
*/
|
|
if (function_exists('nasa_theme_rebuilt_css_dynamic')) {
|
|
nasa_theme_rebuilt_css_dynamic();
|
|
}
|
|
|
|
/**
|
|
* Rewrite Rule URL
|
|
*/
|
|
update_option('permalink_structure', '/%year%/%monthnum%/%day%/%postname%/', true);
|
|
$wc_permalink = array(
|
|
'product_base' => 'product',
|
|
'category_base' => 'product-category',
|
|
'tag_base' => 'product-tag',
|
|
'use_verbose_page_rules' => false
|
|
);
|
|
update_option('woocommerce_permalinks', $wc_permalink, true);
|
|
|
|
flush_rewrite_rules();
|
|
|
|
$loco_settings = array(
|
|
'c' => 'Loco_data_Settings',
|
|
'v' => 0,
|
|
'd' => array(
|
|
'version' => '2.6.10',
|
|
'gen_hash' => false,
|
|
'use_fuzzy' => true,
|
|
'fuzziness' => 20,
|
|
'num_backups' => 5,
|
|
'pot_alias' => array(
|
|
0 => 'default.po',
|
|
1 => 'en_US.po',
|
|
2 => 'en.po',
|
|
),
|
|
'php_alias' => array(
|
|
0 => 'php',
|
|
1 => 'twig',
|
|
),
|
|
'jsx_alias' => array(),
|
|
'fs_persist' => false,
|
|
'fs_protect' => 1,
|
|
'pot_protect' => 1,
|
|
'pot_expected' => 1,
|
|
'max_php_size' => '512K',
|
|
'po_utf8_bom' => false,
|
|
'po_width' => '79',
|
|
'jed_pretty' => false,
|
|
'jed_clean' => false,
|
|
'ajax_files' => true,
|
|
'deepl_api_key' => '',
|
|
'deepl_api_url' => '',
|
|
'google_api_key' => '',
|
|
'microsoft_api_key' => '',
|
|
'microsoft_api_region' => 'global',
|
|
'lecto_api_key' => '',
|
|
),
|
|
't' => time(),
|
|
);
|
|
|
|
update_option('loco_settings', $loco_settings);
|
|
|
|
/**
|
|
* Clear transient on-sale and deal products
|
|
*/
|
|
delete_transient('_wc_products_onsale');
|
|
delete_transient('_nasa_products_deal');
|
|
|
|
update_option('nasatheme_homepage', 'inited');
|
|
update_option('nasatheme_imported', 'imported');
|
|
}
|
|
|
|
/**
|
|
* Addition Homes
|
|
*/
|
|
add_action('wp_ajax_nasa_adddition_home', 'elessi_addition_homepage');
|
|
function elessi_addition_homepage() {
|
|
$type_home = isset($_POST['home_type']) && in_array($_POST['home_type'], array('elm', 'wpb')) ? $_POST['home_type'] : false;
|
|
$home = isset($_POST['home']) ? $_POST['home'] : false;
|
|
|
|
$result = array(
|
|
'success' => '0'
|
|
);
|
|
|
|
if (!$type_home || !$home) {
|
|
wp_send_json($result);
|
|
}
|
|
|
|
if (!class_exists('Elessi_DF_Page_Importer')) {
|
|
require_once ELESSI_ADMIN_PATH . 'importer/nasa-default-page.php';
|
|
}
|
|
|
|
try {
|
|
if (Elessi_DF_Page_Importer::nasa_addition_push_data_from_file($type_home, trim($home))) {
|
|
$result = array(
|
|
'success' => '1',
|
|
'mess' => __('Addition Homepage Success!', 'elessi-theme')
|
|
);
|
|
|
|
wp_send_json($result);
|
|
}
|
|
} catch (Exception $exc) {
|
|
$result = array(
|
|
'success' => '0',
|
|
'mess' => $exc->getMessage()
|
|
);
|
|
|
|
wp_send_json($result);
|
|
}
|
|
|
|
die();
|
|
}
|