File: /mnt/data/dev/dev-dreamstour-wp/wp-content/themes/dreamstour/inc/dreamstour-demo-content.php
<?php
function dreamstour_import_files() {
return [
[
'import_file_name' => 'Dreams Tour',
'categories' => '',
'local_import_file' => trailingslashit( get_template_directory() ) . '/demo-content/content.xml',
'local_import_widget_file' => trailingslashit( get_template_directory() ) . '/demo-content/widgets.wie',
'local_import_customizer_file' => trailingslashit( get_template_directory() ) . '/demo-content/dreamstour-export.dat',
'import_preview_image_url' => get_stylesheet_directory_uri() . '/demo-content/screenshot.png',
'preview_url' => 'https://dreamstour-wp.dreamstechnologies.com/',
'local_import_redux' => [
[
'file_path' => trailingslashit( get_template_directory() ) . '/demo-content/redux.json',
'option_name' => 'dreamstour_theme_options',
],
],
],
];
}
add_filter( 'ocdi/import_files', 'dreamstour_import_files' );
function dreamstour_after_import_setup() {
$main_menu = get_term_by('name', 'Main Menu', 'nav_menu');
set_theme_mod('nav_menu_locations', [
'primary' => $main_menu->term_id,
]);
$front_page_id = get_page_by_title('Home');
$blog_page_id = get_page_by_title('Blog');
update_option('show_on_front', 'page');
update_option('page_on_front', $front_page_id->ID);
update_option('page_for_posts', $blog_page_id->ID);
// Assign Cart and Checkout pages in WooCommerce.
$cart_page_id = get_page_by_title('Cart');
$checkout_page_id = get_page_by_title('Checkout');
$shop_page_id = get_page_by_title('Shop');
$account_page_id = get_page_by_title('My account');
if ($cart_page_id && $checkout_page_id) {
update_option('woocommerce_cart_page_id', $cart_page_id->ID);
update_option('woocommerce_checkout_page_id', $checkout_page_id->ID);
update_option('woocommerce_shop_page_id', $shop_page_id->ID);
update_option('woocommerce_myaccount_page_id', $account_page_id->ID);
}
// Map of demo menu names to Redux fields
$footer_menus = array(
'Footer Pages Menu' => 'footer_column1_menus',
'Footer Company Menu' => 'footer_column2_menus',
'Footer Destinations Menu' => 'footer_column3_menus',
'Footer Support Menu' => 'footer_column4_menus',
'Footer Service Menu' => 'footer_column5_menus',
);
foreach ( $footer_menus as $menu_name => $redux_field ) {
$menu_id = 0;
// Look for the menu by name
$menus = wp_get_nav_menus();
foreach ( $menus as $menu ) {
if ( $menu->name === $menu_name ) {
$menu_id = $menu->term_id;
break;
}
}
if ( $menu_id ) {
// Update Redux option
Redux::setOption( 'redux_option_name', $redux_field, array( $menu_id ) );
}
}
}
add_action('ocdi/after_import', 'dreamstour_after_import_setup');
function delete_all_existing_pages_before_import() {
$pages = get_posts(array(
'post_type' => 'page',
'numberposts' => -1,
'post_status' => 'any',
));
foreach ($pages as $page) {
wp_delete_post($page->ID, true);
}
}
add_action('pt-ocdi/before_import', 'delete_all_existing_pages_before_import');
add_filter('ocdi/register_plugins', function() {
return [
[
'name' => 'Elementor', // Plugin name
'slug' => 'elementor', // Plugin slug (WordPress.org slug)
'required' => true, // Whether the plugin is required
],
[
'name' => 'WooCommerce', // Plugin name
'slug' => 'woocommerce', // Plugin slug (WordPress.org slug)
'required' => true, // Whether the plugin is required
],
[
'name' => 'Redux Framework', // Plugin name
'slug' => 'redux-framework', // Plugin slug (WordPress.org slug)
'required' => true, // Whether the plugin is required
],
[
'name' => 'Dreams Tour', // Custom plugin name
'slug' => 'dreams-tour', // Plugin slug
'source' => 'https://dreamstour-wp.dreamstechnologies.com/wp-content/themes/dreamstour/plugins/dreams-tour.zip',
'required' => true,
'version' => '1.0', // Plugin version
],
[
'name' => 'DreamsTour Widgets', // Custom plugin name
'slug' => 'dreamstour-widgets', // Plugin slug
'source' => 'https://dreamstour-wp.dreamstechnologies.com/wp-content/themes/dreamstour/plugins/dreamstour-widgets.zip',
'required' => true,
'version' => '1.0', // Plugin version
],
[
'name' => 'Contact Form 7', // Plugin name
'slug' => 'contact-form-7', // Plugin slug (WordPress.org slug)
'required' => true, // Whether the plugin is required
],
];
});