OwlCyberSecurity - MANAGER
Edit File: active-plugins.php
<?php require_once (CHURSY_URL.'/install-resource/class-tgm-plugin-activation.php'); add_action( 'tgmpa_register', 'chursy_register_required_plugins' ); function chursy_register_required_plugins() { $plugins = array( array( 'name' => esc_html__('Elementor','chursy'), 'slug' => 'elementor', 'required' => true, ), array( 'name' => esc_html__('Contact Form 7','chursy'), 'slug' => 'contact-form-7', 'required' => true, ), array( 'name' => esc_html__('Widget importer exporter','chursy'), 'slug' => 'widget-importer-exporter', 'required' => true, ), array( 'name' => esc_html__('One click demo import','chursy'), 'slug' => 'one-click-demo-import', 'required' => true, ), array( 'name' => esc_html__('OvaTheme Framework','chursy'), 'slug' => 'ova-framework', 'required' => true, 'source' => get_template_directory() . '/install-resource/plugins/ova-framework.zip', 'version' => '1.0.0', ), array( 'name' => esc_html__('Ovatheme Events','chursy'), 'slug' => 'ova-events', 'required' => true, 'source' => get_template_directory() . '/install-resource/plugins/ova-events.zip', 'version' => '1.0.0', ), array( 'name' => esc_html__('OvaTheme Sermons','chursy'), 'slug' => 'ova-sermons', 'required' => true, 'source' => get_template_directory() . '/install-resource/plugins/ova-sermons.zip', 'version' => '1.0.0', ), array( 'name' => esc_html__('Give - Donation Plugin','chursy'), 'slug' => 'give', 'required' => true, ), array( 'name' => esc_html__('Slider Revolution','chursy'), 'slug' => 'revslider', 'required' => true, 'source' => get_template_directory() . '/install-resource/plugins/revslider.zip', 'version' => '6.7.18', ), array( 'name' => esc_html__('Mailchimp','chursy'), 'slug' => 'mailchimp-for-wp', 'required' => true, ), array( 'name' => esc_html__('CMB2','chursy'), 'slug' => 'cmb2', 'required' => true, ), ); $config = array( 'id' => 'chursy', // Unique ID for hashing notices for multiple instances of TGMPA. 'default_path' => '', // Default absolute path to bundled plugins. 'menu' => 'tgmpa-install-plugins', // Menu slug. 'has_notices' => true, // Show admin notices or not. 'dismissable' => true, // If false, a user cannot dismiss the nag message. 'dismiss_msg' => '', // If 'dismissable' is false, this message will be output at top of nag. 'is_automatic' => false, // Automatically activate plugins after installation or not. 'message' => '', // Message to output right before the plugins table. ); chursy_tgmpa( $plugins, $config ); } // Before import demo data add_action( 'ocdi/before_content_import', 'chursy_before_content_import' ); function chursy_before_content_import() { // update option elementor cpt support $post_types = array('post','page','event','sermon','ova_framework_hf_el'); update_option( 'elementor_cpt_support', $post_types ); // update option give $give_settings = get_option('give_settings'); $give_settings['categories'] = 'enabled'; $give_settings['tags'] = 'enabled'; update_option( 'give_settings', $give_settings ); } add_action( 'pt-ocdi/after_import', 'chursy_after_import_setup' ); function chursy_after_import_setup() { chursy_replace_url_after_import(); // Assign menus to their locations. $primary = get_term_by( 'name', 'Primary Menu', 'nav_menu' ); set_theme_mod( 'nav_menu_locations', array( 'primary' => $primary->term_id, ) ); // Assign front page and posts page (blog page). $front_page_id = chursy_get_page_by_title( 'Home 1' ); $blog_page_id = chursy_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 ); // Config Elementor update_option( 'elementor_disable_color_schemes', 'yes' ); update_option( 'elementor_disable_typography_schemes', 'yes' ); update_option( 'elementor_css_print_method', 'internal' ); update_option( 'elementor_load_fa4_shim', 'yes' ); chursy_import_slideshows_demo(); } add_filter( 'pt-ocdi/import_files', 'chursy_import_files' ); function chursy_import_files() { return array( array( 'import_file_name' => 'Demo Import', 'categories' => array( 'Category 1', 'Category 2' ), 'local_import_file' => trailingslashit( get_template_directory() ) . 'install-resource/demo-import/demo-content.xml', 'local_import_widget_file' => trailingslashit( get_template_directory() ) . 'install-resource/demo-import/widgets.wie', 'local_import_customizer_file' => trailingslashit( get_template_directory() ) . 'install-resource/demo-import/customize.dat' ) ); } // Get page by title if ( ! function_exists( 'chursy_get_page_by_title' ) ) { function chursy_get_page_by_title( $page_title, $output = OBJECT, $post_type = 'page' ) { global $wpdb; if ( is_array( $post_type ) ) { $post_type = esc_sql( $post_type ); $post_type_in_string = "'" . implode( "','", $post_type ) . "'"; $sql = $wpdb->prepare( " SELECT ID FROM $wpdb->posts WHERE post_title = %s AND post_type IN ($post_type_in_string) ", $page_title ); } else { $sql = $wpdb->prepare( " SELECT ID FROM $wpdb->posts WHERE post_title = %s AND post_type = %s ", $page_title, $post_type ); } $page = $wpdb->get_var( $sql ); if ( $page ) { return get_post( $page, $output ); } return null; } } // Replace url after import demo data if ( ! function_exists('chursy_replace_url_after_import') ) { function chursy_replace_url_after_import(){ global $wpdb; $site_url = get_site_url(); $ovatheme_url = "https://demo.ovatheme.com/chursy"; $wpdb->get_results( "UPDATE {$wpdb->prefix}options SET option_value = replace(option_value, '{$ovatheme_url}', '{$site_url}' )" ); $wpdb->get_results( "UPDATE {$wpdb->prefix}postmeta SET meta_value = replace(meta_value, '{$ovatheme_url}', '{$site_url}' )" ); $wpdb->get_results( "UPDATE {$wpdb->prefix}posts SET post_content = replace(post_content, '{$ovatheme_url}', '{$site_url}' )" ); $wpdb->get_results( "UPDATE {$wpdb->prefix}posts SET guid = replace(guid, '{$ovatheme_url}', '{$site_url}' )" ); // Elementor replace $escaped_from = str_replace( '/', '\\/', $ovatheme_url ); $escaped_to = str_replace( '/', '\\/', $site_url ); $meta_value_like = '[%'; // meta_value LIKE '[%' are json formatted $wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->postmeta} " . 'SET `meta_value` = REPLACE(`meta_value`, %s, %s) ' . "WHERE `meta_key` = '_elementor_data' AND `meta_value` LIKE %s;", $escaped_from, $escaped_to, $meta_value_like ) ); } } // Import slideshows if ( ! function_exists( 'chursy_import_slideshows_demo' ) ) { function chursy_import_slideshows_demo() { if ( is_plugin_active('revslider/revslider.php') && class_exists( 'RevSliderSliderImport' ) ) { $slide_files = glob( get_template_directory() . '/install-resource/demo-import/slideshows/*.zip' ); if ( ! empty( $slide_files ) && is_array( $slide_files ) ) { $import = new RevSliderSliderImport(); foreach ( $slide_files as $path_file ) { if ( file_exists( $path_file ) ) { $return = $import->import_slider( false, $path_file ); } } } } } }