register(new \DutchieAnalytics\Elementor\Products_Grid_Widget()); $widgets_manager->register(new \DutchieAnalytics\Elementor\Products_Carousel_Widget()); $widgets_manager->register(new \DutchieAnalytics\Elementor\Stores_List_Widget()); $widgets_manager->register(new \DutchieAnalytics\Elementor\Brands_List_Widget()); $widgets_manager->register(new \DutchieAnalytics\Elementor\Specials_Widget()); }); // Register Elementor Widget Category add_action('elementor/elements/categories_registered', function($elements_manager) { $elements_manager->add_category( 'dutchie-analytics', [ 'title' => __('Dutchie Analytics', 'dutchie-analytics'), 'icon' => 'fa fa-plug', ] ); }); } add_action('plugins_loaded', 'dutchie_analytics_init'); // Enqueue styles and scripts function dutchie_analytics_enqueue_assets() { wp_enqueue_style( 'dutchie-analytics-styles', DUTCHIE_ANALYTICS_URL . 'assets/css/dutchie-analytics.css', [], DUTCHIE_ANALYTICS_VERSION ); wp_enqueue_script( 'dutchie-analytics-scripts', DUTCHIE_ANALYTICS_URL . 'assets/js/dutchie-analytics.js', ['jquery'], DUTCHIE_ANALYTICS_VERSION, true ); // Enqueue Swiper for carousels wp_enqueue_style( 'swiper-css', 'https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css', [], '11.0.0' ); wp_enqueue_script( 'swiper-js', 'https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js', [], '11.0.0', true ); } add_action('wp_enqueue_scripts', 'dutchie_analytics_enqueue_assets'); // Activation hook register_activation_hook(__FILE__, function() { // Set default options add_option('dutchie_analytics_api_url', 'http://localhost:3010/api'); add_option('dutchie_analytics_api_token', ''); }); // Deactivation hook register_deactivation_hook(__FILE__, function() { // Cleanup if needed });