init(); } public function init() { } public static function cafe_elementor_setup_widgets(){ set_theme_mod( 'cafe_elementor_header_phone_number', '+1234567890' ); set_theme_mod( 'cafe_elementor_header_email', 'coffeshop@gmail.com' ); set_theme_mod( 'cafe_elementor_header_location', '863 , America newyork city' ); set_theme_mod( 'cafe_elementor_header_button_text', 'GET QUOTE' ); set_theme_mod( 'cafe_elementor_header_button_url', 'Sign Up' ); set_theme_mod('cafe_elementor_social_links_settings', array( array( "link_text" => "fab fa-instagram", "link_url" => "www.instagram.com" ), array( "link_text" => "fab fa-twitter", "link_url" => "www.twitter.com" ), array( "link_text" => "fab fa-youtube", "link_url" => "www.youtube.com" ), array( "link_text" => "fab fa-linkedin-in", "link_url" => "www.linkedin.com" ) )); $cafe_elementor_product_image_gallery = array(); $cafe_elementor_product_ids = array(); $cafe_elementor_product_category= array( 'All' => array( 'AMERICAN COFFEE', 'CAFFE LATTE', 'COFFEE MOCHA', ), 'Chocolate' => array( 'CAFFE LATTE', 'COFFEE MOCHA', 'AMERICAN COFFEE', ), 'Coffee' => array( 'COFFEE MOCHA', 'AMERICAN COFFEE', 'CAFFE LATTE', ), 'Sweets' => array( 'CAFFE LATTE', 'AMERICAN COFFEE', 'COFFEE MOCHA', ), 'Black Tea' => array( 'AMERICAN COFFEE', 'COFFEE MOCHA', 'CAFFE LATTE', ), 'Green Tea' => array( 'COFFEE MOCHA', 'CAFFE LATTE', 'AMERICAN COFFEE', ), ); $cafe_elementor_k = 1; foreach ( $cafe_elementor_product_category as $cafe_elementor_product_cats => $cafe_elementor_products_name ) { // Insert porduct cats Start $content = 'This is sample product category'; $cafe_elementor_parent_category = wp_insert_term( $cafe_elementor_product_cats, // the term 'product_cat', // the taxonomy array( 'description'=> $content, 'slug' => str_replace( ' ', '-', $cafe_elementor_product_cats) ) ); // -------------- create subcategory END ----------------- $cafe_elementor_n=1; // create Product START foreach ( $cafe_elementor_products_name as $key => $cafe_elementor_product_title ) { $content = '

Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry\'s standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

'; // Create post object $cafe_elementor_my_post = array( 'post_title' => wp_strip_all_tags( $cafe_elementor_product_title ), 'post_content' => $content, 'post_status' => 'publish', 'post_type' => 'product', 'post_category' => [$cafe_elementor_parent_category['term_id']] ); // Insert the post into the database $cafe_elementor_uqpost_id = wp_insert_post($cafe_elementor_my_post); wp_set_object_terms( $cafe_elementor_uqpost_id, str_replace( ' ', '-', $cafe_elementor_product_cats), 'product_cat', true ); $cafe_elementor_product_price = array('35.89','35.89','35.89','35.89'); $cafe_elementor_product_regular_price = array('68.99','68.99','68.99','68.99'); $cafe_elementor_product_sale_price = array('35.89','35.89','35.89','35.89'); update_post_meta( $cafe_elementor_uqpost_id, '_regular_price', $cafe_elementor_product_regular_price[$cafe_elementor_n-1] ); update_post_meta( $cafe_elementor_uqpost_id, '_price', $cafe_elementor_product_price[$cafe_elementor_n-1] ); update_post_meta( $cafe_elementor_uqpost_id, '_sale_price', $cafe_elementor_product_sale_price[$cafe_elementor_n-1] ); array_push( $cafe_elementor_product_ids, $cafe_elementor_uqpost_id ); // Now replace meta w/ new updated value array $cafe_elementor_image_url = get_template_directory_uri().'/assets/images/product/'.$cafe_elementor_product_cats.'/' . str_replace(' ', '_', strtolower($cafe_elementor_product_title)).'.png'; $cafe_elementor_image_name = $cafe_elementor_product_title.'.png'; $cafe_elementor_upload_dir = wp_upload_dir(); // Set upload folder $cafe_elementor_image_data = file_get_contents(esc_url($cafe_elementor_image_url)); // Get image data $unique_file_name = wp_unique_filename($cafe_elementor_upload_dir['path'], $cafe_elementor_image_name); // Generate unique name $cafe_elementor_filename = basename($unique_file_name); // Create image file name // Check folder permission and define file location if (wp_mkdir_p($cafe_elementor_upload_dir['path'])) { $cafe_elementor_file = $cafe_elementor_upload_dir['path'].'/'.$cafe_elementor_filename; } else { $cafe_elementor_file = $cafe_elementor_upload_dir['basedir'].'/'.$cafe_elementor_filename; } file_put_contents($cafe_elementor_file, $cafe_elementor_image_data); // Check image file type $wp_filetype = wp_check_filetype($cafe_elementor_filename, null); // Set attachment data $attachment = array( 'post_mime_type' => $wp_filetype['type'], 'post_title' => sanitize_file_name($cafe_elementor_filename), 'post_type' => 'product', 'post_status' => 'inherit', ); // Create the attachment $cafe_elementor_attach_id = wp_insert_attachment($attachment, $cafe_elementor_file, $cafe_elementor_uqpost_id); // Define attachment metadata $attach_data = wp_generate_attachment_metadata($cafe_elementor_attach_id, $cafe_elementor_file); // Assign metadata to attachment wp_update_attachment_metadata($cafe_elementor_attach_id, $attach_data); if ( count( $cafe_elementor_product_image_gallery ) < 3 ) { array_push( $cafe_elementor_product_image_gallery, $cafe_elementor_attach_id ); } // // And finally assign featured image to post set_post_thumbnail($cafe_elementor_uqpost_id, $cafe_elementor_attach_id); ++$cafe_elementor_n; } // Create product END ++$cafe_elementor_k; } // Add Gallery in first simple product and second variable product START $cafe_elementor_product_image_gallery = implode( ',', $cafe_elementor_product_image_gallery ); foreach ( $cafe_elementor_product_ids as $cafe_elementor_product_id ) { update_post_meta( $cafe_elementor_product_id, 'cafe_elementor_product_image_gallery', $cafe_elementor_product_image_gallery ); } /* Create Menu */ $cafe_elementor_menuname = 'Main Menu'; $cafe_elementor_location = 'main-menu'; $cafe_elementor_menu = wp_get_nav_menu_object( $cafe_elementor_menuname ); if ( ! $cafe_elementor_menu ) { $cafe_elementor_menu_id = wp_create_nav_menu( $cafe_elementor_menuname ); // Home Page wp_update_nav_menu_item( $cafe_elementor_menu_id, 0, array( 'menu-item-title' => __( 'Home', 'cafe-elementor' ), 'menu-item-url' => home_url( '/' ), 'menu-item-type' => 'custom', 'menu-item-status' => 'publish', 'menu-item-position' => 1, ) ); // About Us Page $cafe_elementor_about_id = wp_insert_post( array( 'post_type' => 'page', 'post_content' => 'We are committed to providing reliable, professional, and result-oriented solutions tailored to meet individual needs. Our goal is to empower people with the right guidance, knowledge, and support to help them make informed decisions for a better future.

Our mission is to deliver high-quality services with honesty, transparency, and dedication. We focus on understanding client requirements and offering practical solutions that create long-term value.

With a client-centric approach, experienced professionals, and a commitment to excellence, we ensure every individual receives the attention and guidance they deserve. We believe in building trust through quality service and consistent results.', 'post_title' => 'About Us', 'post_status' => 'publish', ) ); if ( $cafe_elementor_about_id ) { wp_update_nav_menu_item( $cafe_elementor_menu_id, 0, array( 'menu-item-title' => 'About Us', 'menu-item-object' => 'page', 'menu-item-object-id' => $cafe_elementor_about_id, 'menu-item-type' => 'post_type', 'menu-item-status' => 'publish', 'menu-item-position' => 2, ) ); } // Menu Page $cafe_elementor_about_id = wp_insert_post( array( 'post_type' => 'page', 'post_content' => 'We are committed to providing reliable, professional, and result-oriented solutions tailored to meet individual needs. Our goal is to empower people with the right guidance, knowledge, and support to help them make informed decisions for a better future.

Our mission is to deliver high-quality services with honesty, transparency, and dedication. We focus on understanding client requirements and offering practical solutions that create long-term value.

With a client-centric approach, experienced professionals, and a commitment to excellence, we ensure every individual receives the attention and guidance they deserve. We believe in building trust through quality service and consistent results.', 'post_title' => 'Menu', 'post_status' => 'publish', ) ); if ( $cafe_elementor_about_id ) { wp_update_nav_menu_item( $cafe_elementor_menu_id, 0, array( 'menu-item-title' => 'Menu', 'menu-item-object' => 'page', 'menu-item-object-id' => $cafe_elementor_about_id, 'menu-item-type' => 'post_type', 'menu-item-status' => 'publish', 'menu-item-position' => 3, ) ); } // Contact Us Page $cafe_elementor_about_id = wp_insert_post( array( 'post_type' => 'page', 'post_content' => 'We are committed to providing reliable, professional, and result-oriented solutions tailored to meet individual needs. Our goal is to empower people with the right guidance, knowledge, and support to help them make informed decisions for a better future.

Our mission is to deliver high-quality services with honesty, transparency, and dedication. We focus on understanding client requirements and offering practical solutions that create long-term value.

With a client-centric approach, experienced professionals, and a commitment to excellence, we ensure every individual receives the attention and guidance they deserve. We believe in building trust through quality service and consistent results.', 'post_title' => 'Contact Us', 'post_status' => 'publish', ) ); if ( $cafe_elementor_about_id ) { wp_update_nav_menu_item( $cafe_elementor_menu_id, 0, array( 'menu-item-title' => 'Contact Us', 'menu-item-object' => 'page', 'menu-item-object-id' => $cafe_elementor_about_id, 'menu-item-type' => 'post_type', 'menu-item-status' => 'publish', 'menu-item-position' => 4, ) ); } // Pages Page $cafe_elementor_about_id = wp_insert_post( array( 'post_type' => 'page', 'post_content' => 'We are committed to providing reliable, professional, and result-oriented solutions tailored to meet individual needs. Our goal is to empower people with the right guidance, knowledge, and support to help them make informed decisions for a better future.

Our mission is to deliver high-quality services with honesty, transparency, and dedication. We focus on understanding client requirements and offering practical solutions that create long-term value.

With a client-centric approach, experienced professionals, and a commitment to excellence, we ensure every individual receives the attention and guidance they deserve. We believe in building trust through quality service and consistent results.', 'post_title' => 'Pages', 'post_status' => 'publish', ) ); if ( $cafe_elementor_about_id ) { wp_update_nav_menu_item( $cafe_elementor_menu_id, 0, array( 'menu-item-title' => 'Pages', 'menu-item-object' => 'page', 'menu-item-object-id' => $cafe_elementor_about_id, 'menu-item-type' => 'post_type', 'menu-item-status' => 'publish', 'menu-item-position' => 4, ) ); } // Create Shop Page $cafe_elementor_about_title = 'Shop'; $cafe_elementor_about_content = 'Lorem ipsum dolor sit amet...'; $shop_page = get_page_by_path('shop'); if ( !$shop_page ) { $cafe_elementor_about = array( 'post_type' => 'page', 'post_title' => $cafe_elementor_about_title, 'post_content'=> $cafe_elementor_about_content, 'post_status' => 'publish', 'post_author' => 1, 'post_name' => 'shop' ); $cafe_elementor_about_id = wp_insert_post($cafe_elementor_about); } else { $cafe_elementor_about_id = $shop_page->ID; } wp_update_nav_menu_item($cafe_elementor_menu_id, 0, array( 'menu-item-title' => __('Shop', 'cafe-elementor'), 'menu-item-classes' => 'shop', 'menu-item-object-id' => $cafe_elementor_about_id, 'menu-item-object' => 'page', 'menu-item-type' => 'post_type', 'menu-item-status' => 'publish' )); /* ---------- Assign Menu Location ---------- */ $cafe_elementor_locations = get_theme_mod( 'nav_menu_locations', array() ); $cafe_elementor_locations[ $cafe_elementor_location ] = $cafe_elementor_menu_id; set_theme_mod( 'nav_menu_locations', $cafe_elementor_locations ); } } }