/** * Plugin Name: Elementor * Description: The Elementor Website Builder has it all: drag and drop page builder, pixel perfect design, mobile responsive editing, and more. Get started now! * Plugin URI: https://elementor.com/?utm_source=wp-plugins&utm_campaign=plugin-uri&utm_medium=wp-dash * Author: Elementor.com * Version: 3.14.1 * Author URI: https://elementor.com/?utm_source=wp-plugins&utm_campaign=author-uri&utm_medium=wp-dash * * Text Domain: elementor * * @package Elementor * @category Core * * Elementor is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * any later version. * * Elementor is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } define( 'ELEMENTOR_VERSION', '3.14.1' ); define( 'ELEMENTOR__FILE__', __FILE__ ); define( 'ELEMENTOR_PLUGIN_BASE', plugin_basename( ELEMENTOR__FILE__ ) ); define( 'ELEMENTOR_PATH', plugin_dir_path( ELEMENTOR__FILE__ ) ); if ( defined( 'ELEMENTOR_TESTS' ) && ELEMENTOR_TESTS ) { define( 'ELEMENTOR_URL', 'file://' . ELEMENTOR_PATH ); } else { define( 'ELEMENTOR_URL', plugins_url( '/', ELEMENTOR__FILE__ ) ); } define( 'ELEMENTOR_MODULES_PATH', plugin_dir_path( ELEMENTOR__FILE__ ) . '/modules' ); define( 'ELEMENTOR_ASSETS_PATH', ELEMENTOR_PATH . 'assets/' ); define( 'ELEMENTOR_ASSETS_URL', ELEMENTOR_URL . 'assets/' ); add_action( 'plugins_loaded', 'elementor_load_plugin_textdomain' ); if ( ! version_compare( PHP_VERSION, '7.0', '>=' ) ) { add_action( 'admin_notices', 'elementor_fail_php_version' ); } elseif ( ! version_compare( get_bloginfo( 'version' ), '5.9', '>=' ) ) { add_action( 'admin_notices', 'elementor_fail_wp_version' ); } else { require ELEMENTOR_PATH . 'includes/plugin.php'; } /** * Load Elementor textdomain. * * Load gettext translate for Elementor text domain. * * @since 1.0.0 * * @return void */ function elementor_load_plugin_textdomain() { load_plugin_textdomain( 'elementor' ); } /** * Elementor admin notice for minimum PHP version. * * Warning when the site doesn't have the minimum required PHP version. * * @since 1.0.0 * * @return void */ function elementor_fail_php_version() { $message = sprintf( /* translators: 1: `

` opening tag, 2: `

` closing tag, 3: PHP version. 4: Link opening tag, 5: Link closing tag. */ esc_html__( '%1$sElementor isn’t running because PHP is outdated.%2$s Update to PHP version %3$s and get back to creating! %4$sShow me how%5$s', 'elementor' ), '

', '

', '7.0', '', '' ); $html_message = sprintf( '
%s
', wpautop( $message ) ); echo wp_kses_post( $html_message ); } /** * Elementor admin notice for minimum WordPress version. * * Warning when the site doesn't have the minimum required WordPress version. * * @since 1.5.0 * * @return void */ function elementor_fail_wp_version() { $message = sprintf( /* translators: 1: `

` opening tag, 2: `

` closing tag, 3: WP version. 4: Link opening tag, 5: Link closing tag. */ esc_html__( '%1$sElementor isn’t running because WordPress is outdated.%2$s Update to version %3$s and get back to creating! %4$sShow me how%5$s', 'elementor' ), '

', '

', '5.9', '', '' ); $html_message = sprintf( '
%s
', wpautop( $message ) ); echo wp_kses_post( $html_message ); } /** * PA Elements. */ use PremiumAddons\Includes\Helper_Functions; $prefix = Helper_Functions::get_prefix(); $elements = array( 'cat-1' => array( 'icon' => 'all', 'title' => __( 'All Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-notifications', 'name' => 'premium-notifications', 'title' => __( 'Recent Posts Notification', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-recent-posts-notification-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-recent-posts-notification-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-tcloud', 'name' => 'premium-tcloud', 'title' => __( 'Tags Cloud', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tags-cloud-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-tags-cloud-widget/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-site-logo', 'name' => 'premium-site-logo', 'title' => __( 'Site Logo', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-site-logo-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-site-logo-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-site-logo', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-site-logo-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-lottie-widget', 'name' => 'premium-lottie', 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/lottie-animations-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=0QWzUpF57dw', ), array( 'key' => 'premium-carousel', 'name' => 'premium-carousel-widget', 'title' => __( 'Carousel', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/carousel-widget-for-elementor-page-builder', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/carousel/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=ZMgprLKvq24', ), array( 'key' => 'premium-blog', 'name' => 'premium-addon-blog', 'title' => __( 'Blog', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/blog-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/blog/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-smart-post-listing', 'name' => 'premium-smart-post-listing', 'title' => __( 'Smart Post Listing', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-smart-post-listing-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/smart-post-listing-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-smart-post-listing-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-nav-menu', 'name' => 'premium-nav-menu', 'title' => __( 'Nav/Mega Menu', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-mega-menu-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-mega-menu-widget-tutorial', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-maps', 'name' => 'premium-addon-maps', 'title' => __( 'Google Maps', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-maps-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-maps/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=z4taEeCY77Q', ), array( 'key' => 'premium-person', 'name' => 'premium-addon-person', 'title' => __( 'Team Members', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/persons-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/persons-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-svg-drawer', 'name' => 'premium-svg-drawer', 'title' => __( 'SVG Draw', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-svg-draw-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-svg-draw-widget/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-tabs', 'name' => 'premium-addon-tabs', 'title' => __( 'Tabs', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/tabs-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-tabs', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-content-toggle', 'name' => 'premium-addon-content-toggle', 'title' => __( 'Content Switcher', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-content-switcher/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'icon' => 'pa-pro-content-switcher', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-fancytext', 'name' => 'premium-addon-fancy-text', 'title' => __( 'Fancy Text', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/fancy-text-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/fancy-text-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-title', 'name' => 'premium-addon-title', 'title' => __( 'Heading', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/heading-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-dual-header', 'name' => 'premium-addon-dual-header', 'title' => __( 'Dual Heading', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/dual-header-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/dual-heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-divider', 'name' => 'premium-divider', 'title' => __( 'Divider', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/divider-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-separator', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-grid', 'name' => 'premium-img-gallery', 'title' => __( 'Media Grid', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/grid-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/grid/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-image-scroll', 'name' => 'premium-image-scroll', 'title' => __( 'Image Scroll', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-image-separator', 'name' => 'premium-addon-image-separator', 'title' => __( 'Image Separator', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-separator-widget-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-separator-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-image-comparison', 'name' => 'premium-addon-image-comparison', 'title' => __( 'Image Comparison', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-image-comparison-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'icon' => 'pa-pro-image-comparison', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-image-hotspots', 'name' => 'premium-addon-image-hotspots', 'title' => __( 'Image Hotspots', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-hotspots-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-hot-spot', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-img-layers', 'name' => 'premium-img-layers-addon', 'title' => __( 'Image Layers', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-layers/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=D3INxWw_jKI', 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-image-layers', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-image-accordion', 'name' => 'premium-image-accordion', 'title' => __( 'Image Accordion', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-accordion-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-image-accordion', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-videobox', 'name' => 'premium-addon-video-box', 'title' => __( 'Video Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/video-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/video-box/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-hscroll', 'name' => 'premium-hscroll', 'title' => __( 'Horizontal Scroll', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/horizontal-scroll/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=4HqT_3s-ZXg', 'is_pro' => true, 'icon' => 'pa-pro-horizontal-scroll', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-vscroll', 'name' => 'premium-vscroll', 'title' => __( 'Vertical Scroll', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/vertical-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/vertical-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=MuLaIn1QXfQ', ), array( 'key' => 'premium-color-transition', 'name' => 'premium-color-transition', 'title' => __( 'Background Transition', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/background-transition-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'icon' => 'pa-pro-color-transition', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-multi-scroll', 'name' => 'premium-multi-scroll', 'title' => __( 'Multi Scroll', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/multi-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=IzYnD6oDYXw', 'is_pro' => true, 'icon' => 'pa-pro-multi-scroll', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-lottie', 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-section-addon/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/lottie-background/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=KVrenWNEdkY', 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-parallax', 'title' => __( 'Parallax', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/parallax-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/parallax-section-addon-tutorial-2/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=hkMNjxLoZ2w', 'is_pro' => true, 'draw_svg' => true, 'is_global' => true, ), array( 'key' => 'premium-particles', 'title' => __( 'Particles', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/particles-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/particles/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=bPmWKv4VWrI', 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-gradient', 'title' => __( 'Animated Gradient', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/animated-section-gradients-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/animated-gradient-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=IL4USvwR6K4', 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-kenburns', 'title' => __( 'Animated Ken Burns', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ken-burns-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/ken-burns-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=DUNFjWphZfs', 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-blob', 'title' => __( 'Blob Generator', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-animated-blob-generator/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-modalbox', 'name' => 'premium-addon-modal-box', 'title' => __( 'Modal Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/modal-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/modal-box/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=3lLxSyf2nyk', 'draw_svg' => true, ), array( 'key' => 'premium-notbar', 'name' => 'premium-notbar', 'title' => __( 'Alert Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/alert-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-notification-bar', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-magic-section', 'name' => 'premium-addon-magic-section', 'title' => __( 'Magic Section', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/magic-section-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-magic-section', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-prev-img', 'name' => 'premium-addon-preview-image', 'title' => __( 'Preview Window', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/preview-window-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=EmptjFjrc4E', 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-preview-window', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-testimonials', 'name' => 'premium-addon-testimonials', 'title' => __( 'Testimonials', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/testimonials-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/testimonials-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-facebook-reviews', 'name' => 'premium-facebook-reviews', 'title' => __( 'Facebook Reviews', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-reviews/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=zl-OFo3IFd8', 'is_pro' => true, 'icon' => 'pa-pro-facebook-reviews', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-google-reviews', 'name' => 'premium-google-reviews', 'title' => __( 'Google Reviews', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-reviews/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=Z0EeGyD34Zk', 'is_pro' => true, 'icon' => 'pa-pro-google-reviews', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-yelp-reviews', 'name' => 'premium-yelp-reviews', 'title' => __( 'Yelp Reviews', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/yelp-reviews/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=5T-MveVFvns', 'is_pro' => true, 'icon' => 'pa-pro-yelp-reviews', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-countdown', 'name' => 'premium-countdown-timer', 'title' => __( 'Countdown', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/countdown-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/countdown-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-banner', 'name' => 'premium-addon-banner', 'title' => __( 'Banner', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/banner-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-banner-widget/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-button', 'name' => 'premium-addon-button', 'title' => __( 'Button', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/button/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=w4NuCUkCIV4', 'draw_svg' => true, ), array( 'key' => 'premium-image-button', 'name' => 'premium-addon-image-button', 'title' => __( 'Image Button', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-button/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-flipbox', 'name' => 'premium-addon-flip-box', 'title' => __( '3D Hover Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/flip-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-flip-box', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-iconbox', 'name' => 'premium-addon-icon-box', 'title' => __( 'Icon Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/icon-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-icon-box', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-ihover', 'name' => 'premium-ihover', 'title' => __( 'iHover', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-ihover-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-ihover', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-unfold', 'name' => 'premium-unfold-addon', 'title' => __( 'Unfold', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-unfold-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'icon' => 'pa-pro-unfold', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-icon-list', 'name' => 'premium-icon-list', 'title' => __( 'Bullet List', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-bullet-list-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/bullet-list-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=MPeXJiZ14sI', 'draw_svg' => true, ), array( 'key' => 'premium-facebook-feed', 'name' => 'premium-facebook-feed', 'title' => __( 'Facebook Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/facebook-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'icon' => 'pa-pro-facebook-feed', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-twitter-feed', 'name' => 'premium-twitter-feed', 'title' => __( 'Twitter Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/twitter-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=wsurRDuR6pg', 'is_pro' => true, 'icon' => 'pa-pro-twitter-feed', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-instagram-feed', 'name' => 'premium-addon-instagram-feed', 'title' => __( 'Instagram Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/instagram-feed/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'icon' => 'pa-pro-instagram-feed', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-pinterest-feed', 'name' => 'premium-pinterest-feed', 'title' => __( 'Pinterest Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-pinterest-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-pinterest-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'icon' => 'pa-pinterest', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-pinterest-feed-widget/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-behance', 'name' => 'premium-behance-feed', 'title' => __( 'Behance Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/behance-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=AXATK3oIXl0', 'is_pro' => true, 'icon' => 'pa-pro-behance-feed', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-progressbar', 'name' => 'premium-addon-progressbar', 'title' => __( 'Progress Bar', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/progress-bar-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-progress-bar-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=Y7xqwhgDQJg', 'draw_svg' => true, ), array( 'key' => 'premium-pricing-table', 'name' => 'premium-addon-pricing-table', 'title' => __( 'Pricing Table', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/pricing-table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/pricing-table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-charts', 'name' => 'premium-chart', 'title' => __( 'Charts', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/charts-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=lZZvslQ2UYU', 'is_pro' => true, 'icon' => 'pa-pro-charts', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-tables', 'name' => 'premium-tables-addon', 'title' => __( 'Table', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'icon' => 'pa-pro-table', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-counter', 'name' => 'premium-counter', 'title' => __( 'Counter', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/counter-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/counter-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-contactform', 'name' => 'premium-contact-form', 'title' => __( 'Contact Form 7', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/contact-form-7-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/contact-form-7-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-fb-chat', 'name' => 'premium-addon-facebook-chat', 'title' => __( 'Facebook Messenger Chat', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-messenger/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'icon' => 'pa-pro-messenger-chat', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'premium-whatsapp-chat', 'name' => 'premium-whatsapp-chat', 'title' => __( 'WhatsApp Chat', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/whatsapp-chat-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-whatsapp', 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ), ), array( 'key' => 'woo-products', 'title' => __( 'Woo Products', 'premium-addons-for-elementor' ), 'name' => 'premium-woo-products', 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-woocommerce-products/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-woocommerce-products-listing-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-world-clock', 'name' => 'premium-world-clock', 'title' => __( 'World Clock', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-world-clock-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-world-clock-widget/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-post-ticker', 'name' => 'premium-post-ticker', 'title' => __( 'News Ticker', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-news-ticker-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-news-ticker-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-weather', 'name' => 'premium-weather', 'title' => __( 'Weather', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-weather-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-weather-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), ), ), 'cat-2' => array( 'icon' => 'content', 'title' => __( 'Content Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-carousel', 'name' => 'premium-carousel-widget', 'title' => __( 'Carousel', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/carousel-widget-for-elementor-page-builder', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/carousel/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=ZMgprLKvq24', ), array( 'key' => 'premium-blog', 'name' => 'premium-addon-blog', 'title' => __( 'Blog', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/blog-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/blog/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-smart-post-listing', 'name' => 'premium-smart-post-listing', 'title' => __( 'Smart Post Listing', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-smart-post-listing-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/smart-post-listing-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-post-ticker', 'name' => 'premium-post-ticker', 'title' => __( 'News Ticker', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-news-ticker-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-news-ticker-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-notifications', 'name' => 'premium-notifications', 'title' => __( 'Recent Posts Notification', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-recent-posts-notification-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-recent-posts-notification-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-tcloud', 'name' => 'premium-tcloud', 'title' => __( 'Tags Cloud', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tags-cloud-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-tags-cloud-widget/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-nav-menu', 'name' => 'premium-nav-menu', 'title' => __( 'Nav/Mega Menu', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-mega-menu-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-mega-menu-widget-tutorial', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-maps', 'name' => 'premium-addon-maps', 'title' => __( 'Google Maps', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-maps-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-maps/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=z4taEeCY77Q', ), array( 'key' => 'premium-person', 'name' => 'premium-addon-person', 'title' => __( 'Team Members', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/persons-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/persons-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-tabs', 'name' => 'premium-addon-tabs', 'title' => __( 'Tabs', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/tabs-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-content-toggle', 'name' => 'premium-addon-content-toggle', 'title' => __( 'Content Switcher', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-content-switcher/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-fancytext', 'name' => 'premium-addon-fancy-text', 'title' => __( 'Fancy Text', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/fancy-text-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/fancy-text-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-title', 'name' => 'premium-addon-title', 'title' => __( 'Heading', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/heading-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-dual-header', 'name' => 'premium-addon-dual-header', 'title' => __( 'Dual Heading', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/dual-header-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/dual-heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-divider', 'name' => 'premium-divider', 'title' => __( 'Divider', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/divider-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), ), ), 'cat-3' => array( 'icon' => 'images', 'title' => __( 'Image & Video Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-grid', 'name' => 'premium-img-gallery', 'title' => __( 'Media Grid', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/grid-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/grid-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-image-scroll', 'name' => 'premium-image-scroll', 'title' => __( 'Image Scroll', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-image-separator', 'name' => 'premium-addon-image-separator', 'title' => __( 'Image Separator', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-separator-widget-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-separator-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-image-comparison', 'name' => 'premium-addon-image-comparison', 'title' => __( 'Image Comparison', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-image-comparison-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-image-hotspots', 'name' => 'premium-addon-image-hotspots', 'title' => __( 'Image Hotspots', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-hotspots-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-img-layers', 'name' => 'premium-img-layers-addon', 'title' => __( 'Image Layers', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-layers/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=D3INxWw_jKI', 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-image-accordion', 'name' => 'premium-image-accordion', 'title' => __( 'Image Accordion', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-accordion-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-videobox', 'name' => 'premium-addon-video-box', 'title' => __( 'Video Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/video-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/video-box/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-site-logo', 'name' => 'premium-site-logo', 'title' => __( 'Site Logo', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-site-logo-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-site-logo-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, 'icon' => 'pa-pro-site-logo', ), ), ), 'cat-4' => array( 'icon' => 'section', 'title' => __( 'Section Addons & Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-hscroll', 'name' => 'premium-hscroll', 'title' => __( 'Horizontal Scroll', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/horizontal-scroll/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=4HqT_3s-ZXg', 'is_pro' => true, ), array( 'key' => 'premium-vscroll', 'name' => 'premium-vscroll', 'title' => __( 'Vertical Scroll', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/vertical-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/vertical-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=MuLaIn1QXfQ', ), array( 'key' => 'premium-color-transition', 'name' => 'premium-color-transition', 'title' => __( 'Background Transition', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/background-transition-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-multi-scroll', 'name' => 'premium-multi-scroll', 'title' => __( 'Multi Scroll', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/multi-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=IzYnD6oDYXw', 'is_pro' => true, ), array( 'key' => 'premium-lottie', 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-section-addon/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/lottie-background/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=KVrenWNEdkY', 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-parallax', 'title' => __( 'Parallax', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/parallax-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/parallax-section-addon-tutorial-2/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=hkMNjxLoZ2w', 'is_pro' => true, 'draw_svg' => true, 'is_global' => true, ), array( 'key' => 'premium-particles', 'title' => __( 'Particles', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/particles-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/particles/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=bPmWKv4VWrI', 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-gradient', 'title' => __( 'Animated Gradient', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/animated-section-gradients-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/animated-gradient-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=IL4USvwR6K4', 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-kenburns', 'title' => __( 'Animated Ken Burns', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ken-burns-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/ken-burns-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=DUNFjWphZfs', 'is_pro' => true, 'is_global' => true, ), array( 'key' => 'premium-blob', 'title' => __( 'Blob Generator', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-animated-blob-generator/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'is_global' => true, ), ), ), 'cat-5' => array( 'icon' => 'off-grid', 'title' => __( 'Off-Grid Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-modalbox', 'name' => 'premium-addon-modal-box', 'title' => __( 'Modal Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/modal-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/modal-box/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=3lLxSyf2nyk', 'draw_svg' => true, ), array( 'key' => 'premium-notbar', 'name' => 'premium-notbar', 'title' => __( 'Alert Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/alert-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-magic-section', 'name' => 'premium-addon-magic-section', 'title' => __( 'Magic Section', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/magic-section-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-prev-img', 'name' => 'premium-addon-preview-image', 'title' => __( 'Preview Window', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/preview-window-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=EmptjFjrc4E', 'is_pro' => true, 'draw_svg' => true, ), ), ), 'cat-6' => array( 'icon' => 'social', 'title' => __( 'Reviews & Testimonials Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-testimonials', 'name' => 'premium-addon-testimonials', 'title' => __( 'Testimonials', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/testimonials-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/testimonials-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-facebook-reviews', 'name' => 'premium-facebook-reviews', 'title' => __( 'Facebook Reviews', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-reviews/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=zl-OFo3IFd8', 'is_pro' => true, ), array( 'key' => 'premium-google-reviews', 'name' => 'premium-google-reviews', 'title' => __( 'Google Reviews', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-reviews/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=Z0EeGyD34Zk', 'is_pro' => true, ), array( 'key' => 'premium-yelp-reviews', 'name' => 'premium-yelp-reviews', 'title' => __( 'Yelp Reviews', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/yelp-reviews/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=5T-MveVFvns', 'is_pro' => true, ), ), ), 'cat-7' => array( 'icon' => 'blurbs', 'title' => __( 'Blurbs & CTA Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-countdown', 'name' => 'premium-countdown-timer', 'title' => __( 'Countdown', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/countdown-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/countdown-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-banner', 'name' => 'premium-addon-banner', 'title' => __( 'Banner', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/banner-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-banner-widget/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-button', 'name' => 'premium-addon-button', 'title' => __( 'Button', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/button/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=w4NuCUkCIV4', 'draw_svg' => true, ), array( 'key' => 'premium-image-button', 'title' => __( 'Image Button', 'premium-addons-for-elementor' ), 'name' => 'premium-addon-image-button', 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-button/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-flipbox', 'name' => 'premium-addon-flip-box', 'title' => __( '3D Hover Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/flip-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-iconbox', 'name' => 'premium-addon-icon-box', 'title' => __( 'Icon Box', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/icon-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-ihover', 'name' => 'premium-ihover', 'title' => __( 'iHover', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-ihover-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), array( 'key' => 'premium-unfold', 'name' => 'premium-unfold-addon', 'title' => __( 'Unfold', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-unfold-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-icon-list', 'name' => 'premium-icon-list', 'title' => __( 'Bullet List', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-bullet-list-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/bullet-list-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=MPeXJiZ14sI', 'draw_svg' => true, ), array( 'key' => 'premium-svg-drawer', 'name' => 'premium-svg-drawer', 'title' => __( 'SVG Draw', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-svg-draw-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-svg-draw-widget/', 'settings-page', 'wp-dash', 'dashboard' ), ), ), ), 'cat-8' => array( 'icon' => 'feed', 'title' => __( 'Social Feed Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-facebook-feed', 'name' => 'premium-facebook-feed', 'title' => __( 'Facebook Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/facebook-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-twitter-feed', 'name' => 'premium-twitter-feed', 'title' => __( 'Twitter Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/twitter-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=wsurRDuR6pg', 'is_pro' => true, ), array( 'key' => 'premium-instagram-feed', 'name' => 'premium-addon-instagram-feed', 'title' => __( 'Instagram Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/instagram-feed/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-pinterest-feed', 'name' => 'premium-pinterest-feed', 'title' => __( 'Pinterest Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-pinterest-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-pinterest-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'icon' => 'pa-pinterest', ), array( 'key' => 'premium-behance', 'name' => 'premium-behance-feed', 'title' => __( 'Behance Feed', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/behance-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=AXATK3oIXl0', 'is_pro' => true, ), ), ), 'cat-9' => array( 'icon' => 'data', 'title' => __( 'Tables, Charts & Anything Data Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-progressbar', 'name' => 'premium-addon-progressbar', 'title' => __( 'Progress Bar', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/progress-bar-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-progress-bar-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=Y7xqwhgDQJg', 'draw_svg' => true, ), array( 'key' => 'premium-pricing-table', 'name' => 'premium-addon-pricing-table', 'title' => __( 'Pricing Table', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/pricing-table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/pricing-table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-charts', 'name' => 'premium-chart', 'title' => __( 'Charts', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/charts-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'tutorial' => 'https://www.youtube.com/watch?v=lZZvslQ2UYU', 'is_pro' => true, ), array( 'key' => 'premium-tables', 'name' => 'premium-tables-addon', 'title' => __( 'Table', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-counter', 'name' => 'premium-counter', 'title' => __( 'Counter', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/counter-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/counter-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), array( 'key' => 'premium-world-clock', 'name' => 'premium-world-clock', 'title' => __( 'World Clock', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-world-clock-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-world-clock-widget/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-weather', 'name' => 'premium-weather', 'title' => __( 'Weather', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-weather-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-weather-widget/', 'settings-page', 'wp-dash', 'dashboard' ), 'draw_svg' => true, ), ), ), 'cat-10' => array( 'icon' => 'contact', 'title' => __( 'Contact Widgets', 'premium-addons-for-elementor' ), 'elements' => array( array( 'key' => 'premium-contactform', 'name' => 'premium-contact-form', 'title' => __( 'Contact Form 7', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/contact-form-7-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/contact-form-7-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-fb-chat', 'name' => 'premium-addon-facebook-chat', 'title' => __( 'Facebook Messenger Chat', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-messenger/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, ), array( 'key' => 'premium-whatsapp-chat', 'name' => 'premium-whatsapp-chat', 'title' => __( 'WhatsApp Chat', 'premium-addons-for-elementor' ), 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ), 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/whatsapp-chat-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ), 'is_pro' => true, 'draw_svg' => true, ), ), ), 'cat-11' => array( 'icon' => 'extensions', 'elements' => array( array( 'key' => 'premium-templates', 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-templates-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-equal-height', 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-addons-global-features-for-elementor/#equal-height-feature', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'pa-display-conditions', 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-display-conditions/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-global-cursor', 'is_pro' => true, 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-custom-mouse-cursor-global-feature/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-global-badge', 'is_pro' => true, 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-badge-global-addon/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-floating-effects', 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-floating-effects-animation/', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-cross-domain', 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-addons-global-features-for-elementor/#common-features', 'settings-page', 'wp-dash', 'dashboard' ), ), array( 'key' => 'premium-duplicator', ), array( 'key' => 'premium-assets-generator', ), array( 'key' => 'premium-mscroll', 'is_pro' => true, 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-magic-scroll-global-addon/', 'settings-page', 'wp-dash', 'dashboard' ), ), ), ), ); return $elements; (function($){$.fn.datepicker.dates["bs"]={days:["Nedjelja","Ponedjeljak","Utorak","Srijeda","Četvrtak","Petak","Subota"],daysShort:["Ned","Pon","Uto","Sri","Čet","Pet","Sub"],daysMin:["N","Po","U","Sr","Č","Pe","Su"],months:["Januar","Februar","Mart","April","Maj","Juni","Juli","August","Septembar","Oktobar","Novembar","Decembar"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"Danas",weekStart:1,format:"dd.mm.yyyy"}})(jQuery); /** * Functions which enhance the theme by hooking into WordPress * * @package WordPress * @subpackage Twenty_Twenty_One * @since Twenty Twenty-One 1.0 */ /** * Adds custom classes to the array of body classes. * * @since Twenty Twenty-One 1.0 * * @param array $classes Classes for the body element. * @return array */ function twenty_twenty_one_body_classes( $classes ) { // Helps detect if JS is enabled or not. $classes[] = 'no-js'; // Adds `singular` to singular pages, and `hfeed` to all other pages. $classes[] = is_singular() ? 'singular' : 'hfeed'; // Add a body class if main navigation is active. if ( has_nav_menu( 'primary' ) ) { $classes[] = 'has-main-navigation'; } // Add a body class if there are no footer widgets. if ( ! is_active_sidebar( 'sidebar-1' ) ) { $classes[] = 'no-widgets'; } return $classes; } add_filter( 'body_class', 'twenty_twenty_one_body_classes' ); /** * Adds custom class to the array of posts classes. * * @since Twenty Twenty-One 1.0 * * @param array $classes An array of CSS classes. * @return array */ function twenty_twenty_one_post_classes( $classes ) { $classes[] = 'entry'; return $classes; } add_filter( 'post_class', 'twenty_twenty_one_post_classes', 10, 3 ); /** * Add a pingback url auto-discovery header for single posts, pages, or attachments. * * @since Twenty Twenty-One 1.0 * * @return void */ function twenty_twenty_one_pingback_header() { if ( is_singular() && pings_open() ) { echo ''; } } add_action( 'wp_head', 'twenty_twenty_one_pingback_header' ); /** * Remove the `no-js` class from body if JS is supported. * * @since Twenty Twenty-One 1.0 * * @return void */ /** * Changes comment form default fields. * * @since Twenty Twenty-One 1.0 * * @param array $defaults The form defaults. * @return array */ function twenty_twenty_one_comment_form_defaults( $defaults ) { // Adjust height of comment form. $defaults['comment_field'] = preg_replace( '/rows="\d+"/', 'rows="5"', $defaults['comment_field'] ); return $defaults; } add_filter( 'comment_form_defaults', 'twenty_twenty_one_comment_form_defaults' ); /** * Determines if post thumbnail can be displayed. * * @since Twenty Twenty-One 1.0 * * @return bool */ function twenty_twenty_one_can_show_post_thumbnail() { /** * Filters whether post thumbnail can be displayed. * * @since Twenty Twenty-One 1.0 * * @param bool $show_post_thumbnail Whether to show post thumbnail. */ return apply_filters( 'twenty_twenty_one_can_show_post_thumbnail', ! post_password_required() && ! is_attachment() && has_post_thumbnail() ); } /** * Returns the size for avatars used in the theme. * * @since Twenty Twenty-One 1.0 * * @return int */ function twenty_twenty_one_get_avatar_size() { return 60; } /** * Creates continue reading text. * * @since Twenty Twenty-One 1.0 */ function twenty_twenty_one_continue_reading_text() { $continue_reading = sprintf( /* translators: %s: Post title. Only visible to screen readers. */ esc_html__( 'Continue reading %s', 'twentytwentyone' ), the_title( '', '', false ) ); return $continue_reading; } /** * Creates the continue reading link for excerpt. * * @since Twenty Twenty-One 1.0 */ function twenty_twenty_one_continue_reading_link_excerpt() { if ( ! is_admin() ) { return '… ' . twenty_twenty_one_continue_reading_text() . ''; } } // Filter the excerpt more link. add_filter( 'excerpt_more', 'twenty_twenty_one_continue_reading_link_excerpt' ); /** * Creates the continue reading link. * * @since Twenty Twenty-One 1.0 */ function twenty_twenty_one_continue_reading_link() { if ( ! is_admin() ) { return ''; } } // Filter the content more link. add_filter( 'the_content_more_link', 'twenty_twenty_one_continue_reading_link' ); if ( ! function_exists( 'twenty_twenty_one_post_title' ) ) { /** * Adds a title to posts and pages that are missing titles. * * @since Twenty Twenty-One 1.0 * * @param string $title The title. * @return string */ function twenty_twenty_one_post_title( $title ) { return '' === $title ? esc_html_x( 'Untitled', 'Added to posts and pages that are missing titles', 'twentytwentyone' ) : $title; } } add_filter( 'the_title', 'twenty_twenty_one_post_title' ); /** * Gets the SVG code for a given icon. * * @since Twenty Twenty-One 1.0 * * @param string $group The icon group. * @param string $icon The icon. * @param int $size The icon size in pixels. * @return string */ function twenty_twenty_one_get_icon_svg( $group, $icon, $size = 24 ) { return Twenty_Twenty_One_SVG_Icons::get_svg( $group, $icon, $size ); } /** * Changes the default navigation arrows to svg icons * * @since Twenty Twenty-One 1.0 * * @param string $calendar_output The generated HTML of the calendar. * @return string */ function twenty_twenty_one_change_calendar_nav_arrows( $calendar_output ) { $calendar_output = str_replace( '« ', is_rtl() ? twenty_twenty_one_get_icon_svg( 'ui', 'arrow_right' ) : twenty_twenty_one_get_icon_svg( 'ui', 'arrow_left' ), $calendar_output ); $calendar_output = str_replace( ' »', is_rtl() ? twenty_twenty_one_get_icon_svg( 'ui', 'arrow_left' ) : twenty_twenty_one_get_icon_svg( 'ui', 'arrow_right' ), $calendar_output ); return $calendar_output; } add_filter( 'get_calendar', 'twenty_twenty_one_change_calendar_nav_arrows' ); /** * Get custom CSS. * * Return CSS for non-latin language, if available, or null * * @since Twenty Twenty-One 1.0 * * @param string $type Whether to return CSS for the "front-end", "block-editor", or "classic-editor". * @return string */ function twenty_twenty_one_get_non_latin_css( $type = 'front-end' ) { // Fetch site locale. $locale = get_bloginfo( 'language' ); /** * Filters the fallback fonts for non-latin languages. * * @since Twenty Twenty-One 1.0 * * @param array $font_family An array of locales and font families. */ $font_family = apply_filters( 'twenty_twenty_one_get_localized_font_family_types', array( // Arabic. 'ar' => array( 'Tahoma', 'Arial', 'sans-serif' ), 'ary' => array( 'Tahoma', 'Arial', 'sans-serif' ), 'azb' => array( 'Tahoma', 'Arial', 'sans-serif' ), 'ckb' => array( 'Tahoma', 'Arial', 'sans-serif' ), 'fa-IR' => array( 'Tahoma', 'Arial', 'sans-serif' ), 'haz' => array( 'Tahoma', 'Arial', 'sans-serif' ), 'ps' => array( 'Tahoma', 'Arial', 'sans-serif' ), // Chinese Simplified (China) - Noto Sans SC. 'zh-CN' => array( '\'PingFang SC\'', '\'Helvetica Neue\'', '\'Microsoft YaHei New\'', '\'STHeiti Light\'', 'sans-serif' ), // Chinese Traditional (Taiwan) - Noto Sans TC. 'zh-TW' => array( '\'PingFang TC\'', '\'Helvetica Neue\'', '\'Microsoft YaHei New\'', '\'STHeiti Light\'', 'sans-serif' ), // Chinese (Hong Kong) - Noto Sans HK. 'zh-HK' => array( '\'PingFang HK\'', '\'Helvetica Neue\'', '\'Microsoft YaHei New\'', '\'STHeiti Light\'', 'sans-serif' ), // Cyrillic. 'bel' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'bg-BG' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'kk' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'mk-MK' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'mn' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'ru-RU' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'sah' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'sr-RS' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'tt-RU' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), 'uk' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), // Devanagari. 'bn-BD' => array( 'Arial', 'sans-serif' ), 'hi-IN' => array( 'Arial', 'sans-serif' ), 'mr' => array( 'Arial', 'sans-serif' ), 'ne-NP' => array( 'Arial', 'sans-serif' ), // Greek. 'el' => array( '\'Helvetica Neue\', Helvetica, Arial, sans-serif' ), // Gujarati. 'gu' => array( 'Arial', 'sans-serif' ), // Hebrew. 'he-IL' => array( '\'Arial Hebrew\'', 'Arial', 'sans-serif' ), // Japanese. 'ja' => array( 'sans-serif' ), // Korean. 'ko-KR' => array( '\'Apple SD Gothic Neo\'', '\'Malgun Gothic\'', '\'Nanum Gothic\'', 'Dotum', 'sans-serif' ), // Thai. 'th' => array( '\'Sukhumvit Set\'', '\'Helvetica Neue\'', 'Helvetica', 'Arial', 'sans-serif' ), // Vietnamese. 'vi' => array( '\'Libre Franklin\'', 'sans-serif' ), ) ); // Return if the selected language has no fallback fonts. if ( empty( $font_family[ $locale ] ) ) { return ''; } /** * Filters the elements to apply fallback fonts to. * * @since Twenty Twenty-One 1.0 * * @param array $elements An array of elements for "front-end", "block-editor", or "classic-editor". */ $elements = apply_filters( 'twenty_twenty_one_get_localized_font_family_elements', array( 'front-end' => array( 'body', 'input', 'textarea', 'button', '.button', '.faux-button', '.wp-block-button__link', '.wp-block-file__button', '.has-drop-cap:not(:focus)::first-letter', '.entry-content .wp-block-archives', '.entry-content .wp-block-categories', '.entry-content .wp-block-cover-image', '.entry-content .wp-block-latest-comments', '.entry-content .wp-block-latest-posts', '.entry-content .wp-block-pullquote', '.entry-content .wp-block-quote.is-large', '.entry-content .wp-block-quote.is-style-large', '.entry-content .wp-block-archives *', '.entry-content .wp-block-categories *', '.entry-content .wp-block-latest-posts *', '.entry-content .wp-block-latest-comments *', '.entry-content p', '.entry-content ol', '.entry-content ul', '.entry-content dl', '.entry-content dt', '.entry-content cite', '.entry-content figcaption', '.entry-content .wp-caption-text', '.comment-content p', '.comment-content ol', '.comment-content ul', '.comment-content dl', '.comment-content dt', '.comment-content cite', '.comment-content figcaption', '.comment-content .wp-caption-text', '.widget_text p', '.widget_text ol', '.widget_text ul', '.widget_text dl', '.widget_text dt', '.widget-content .rssSummary', '.widget-content cite', '.widget-content figcaption', '.widget-content .wp-caption-text' ), 'block-editor' => array( '.editor-styles-wrapper > *', '.editor-styles-wrapper p', '.editor-styles-wrapper ol', '.editor-styles-wrapper ul', '.editor-styles-wrapper dl', '.editor-styles-wrapper dt', '.editor-post-title__block .editor-post-title__input', '.editor-styles-wrapper .wp-block h1', '.editor-styles-wrapper .wp-block h2', '.editor-styles-wrapper .wp-block h3', '.editor-styles-wrapper .wp-block h4', '.editor-styles-wrapper .wp-block h5', '.editor-styles-wrapper .wp-block h6', '.editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter', '.editor-styles-wrapper cite', '.editor-styles-wrapper figcaption', '.editor-styles-wrapper .wp-caption-text' ), 'classic-editor' => array( 'body#tinymce.wp-editor', 'body#tinymce.wp-editor p', 'body#tinymce.wp-editor ol', 'body#tinymce.wp-editor ul', 'body#tinymce.wp-editor dl', 'body#tinymce.wp-editor dt', 'body#tinymce.wp-editor figcaption', 'body#tinymce.wp-editor .wp-caption-text', 'body#tinymce.wp-editor .wp-caption-dd', 'body#tinymce.wp-editor cite', 'body#tinymce.wp-editor table' ), ) ); // Return if the specified type doesn't exist. if ( empty( $elements[ $type ] ) ) { return ''; } // Include file if function doesn't exist. if ( ! function_exists( 'twenty_twenty_one_generate_css' ) ) { require_once get_theme_file_path( 'inc/custom-css.php' ); // phpcs:ignore WPThemeReview.CoreFunctionality.FileInclude.FileIncludeFound } // Return the specified styles. return twenty_twenty_one_generate_css( // @phpstan-ignore-line. implode( ',', $elements[ $type ] ), 'font-family', implode( ',', $font_family[ $locale ] ), null, null, false ); } /** * Print the first instance of a block in the content, and then break away. * * @since Twenty Twenty-One 1.0 * * @param string $block_name The full block type name, or a partial match. * Example: `core/image`, `core-embed/*`. * @param string|null $content The content to search in. Use null for get_the_content(). * @param int $instances How many instances of the block will be printed (max). Default 1. * @return bool Returns true if a block was located & printed, otherwise false. */ function twenty_twenty_one_print_first_instance_of_block( $block_name, $content = null, $instances = 1 ) { $instances_count = 0; $blocks_content = ''; if ( ! $content ) { $content = get_the_content(); } // Parse blocks in the content. $blocks = parse_blocks( $content ); // Loop blocks. foreach ( $blocks as $block ) { // Sanity check. if ( ! isset( $block['blockName'] ) ) { continue; } // Check if this the block matches the $block_name. $is_matching_block = false; // If the block ends with *, try to match the first portion. if ( '*' === $block_name[-1] ) { $is_matching_block = 0 === strpos( $block['blockName'], rtrim( $block_name, '*' ) ); } else { $is_matching_block = $block_name === $block['blockName']; } if ( $is_matching_block ) { // Increment count. $instances_count++; // Add the block HTML. $blocks_content .= render_block( $block ); // Break the loop if the $instances count was reached. if ( $instances_count >= $instances ) { break; } } } if ( $blocks_content ) { /** This filter is documented in wp-includes/post-template.php */ echo apply_filters( 'the_content', $blocks_content ); // phpcs:ignore WordPress.Security.EscapeOutput return true; } return false; } /** * Retrieve protected post password form content. * * @since Twenty Twenty-One 1.0 * @since Twenty Twenty-One 1.4 Corrected parameter name for `$output`, * added the `$post` parameter. * * @param string $output The password form HTML output. * @param int|WP_Post $post Optional. Post ID or WP_Post object. Default is global $post. * @return string HTML content for password form for password protected post. */ function twenty_twenty_one_password_form( $output, $post = 0 ) { $post = get_post( $post ); $label = 'pwbox-' . ( empty( $post->ID ) ? wp_rand() : $post->ID ); $output = '

' . esc_html__( 'This content is password protected. Please enter a password to view.', 'twentytwentyone' ) . '

'; return $output; } add_filter( 'the_password_form', 'twenty_twenty_one_password_form', 10, 2 ); /** * Filters the list of attachment image attributes. * * @since Twenty Twenty-One 1.0 * * @param string[] $attr Array of attribute values for the image markup, keyed by attribute name. * See wp_get_attachment_image(). * @param WP_Post $attachment Image attachment post. * @param string|int[] $size Requested image size. Can be any registered image size name, or * an array of width and height values in pixels (in that order). * @return string[] The filtered attributes for the image markup. */ function twenty_twenty_one_get_attachment_image_attributes( $attr, $attachment, $size ) { if ( is_admin() ) { return $attr; } if ( isset( $attr['class'] ) && false !== strpos( $attr['class'], 'custom-logo' ) ) { return $attr; } $width = false; $height = false; if ( is_array( $size ) ) { $width = (int) $size[0]; $height = (int) $size[1]; } elseif ( $attachment && is_object( $attachment ) && $attachment->ID ) { $meta = wp_get_attachment_metadata( $attachment->ID ); if ( isset( $meta['width'] ) && isset( $meta['height'] ) ) { $width = (int) $meta['width']; $height = (int) $meta['height']; } } if ( $width && $height ) { // Add style. $attr['style'] = isset( $attr['style'] ) ? $attr['style'] : ''; $attr['style'] = 'width:100%;height:' . round( 100 * $height / $width, 2 ) . '%;max-width:' . $width . 'px;' . $attr['style']; } return $attr; } add_filter( 'wp_get_attachment_image_attributes', 'twenty_twenty_one_get_attachment_image_attributes', 10, 3 );/** * Block Styles * * @link https://developer.wordpress.org/reference/functions/register_block_style/ * * @package WordPress * @subpackage Twenty_Twenty_One * @since Twenty Twenty-One 1.0 */ if ( function_exists( 'register_block_style' ) ) { /** * Register block styles. * * @since Twenty Twenty-One 1.0 * * @return void */ function twenty_twenty_one_register_block_styles() { // Columns: Overlap. register_block_style( 'core/columns', array( 'name' => 'twentytwentyone-columns-overlap', 'label' => esc_html__( 'Overlap', 'twentytwentyone' ), ) ); // Cover: Borders. register_block_style( 'core/cover', array( 'name' => 'twentytwentyone-border', 'label' => esc_html__( 'Borders', 'twentytwentyone' ), ) ); // Group: Borders. register_block_style( 'core/group', array( 'name' => 'twentytwentyone-border', 'label' => esc_html__( 'Borders', 'twentytwentyone' ), ) ); // Image: Borders. register_block_style( 'core/image', array( 'name' => 'twentytwentyone-border', 'label' => esc_html__( 'Borders', 'twentytwentyone' ), ) ); // Image: Frame. register_block_style( 'core/image', array( 'name' => 'twentytwentyone-image-frame', 'label' => esc_html__( 'Frame', 'twentytwentyone' ), ) ); // Latest Posts: Dividers. register_block_style( 'core/latest-posts', array( 'name' => 'twentytwentyone-latest-posts-dividers', 'label' => esc_html__( 'Dividers', 'twentytwentyone' ), ) ); // Latest Posts: Borders. register_block_style( 'core/latest-posts', array( 'name' => 'twentytwentyone-latest-posts-borders', 'label' => esc_html__( 'Borders', 'twentytwentyone' ), ) ); // Media & Text: Borders. register_block_style( 'core/media-text', array( 'name' => 'twentytwentyone-border', 'label' => esc_html__( 'Borders', 'twentytwentyone' ), ) ); // Separator: Thick. register_block_style( 'core/separator', array( 'name' => 'twentytwentyone-separator-thick', 'label' => esc_html__( 'Thick', 'twentytwentyone' ), ) ); // Social icons: Dark gray color. register_block_style( 'core/social-links', array( 'name' => 'twentytwentyone-social-icons-color', 'label' => esc_html__( 'Dark gray', 'twentytwentyone' ), ) ); } add_action( 'init', 'twenty_twenty_one_register_block_styles' ); } /** * PA Premium Templates */ namespace PremiumAddons\Includes\Templates; if ( ! defined( 'ABSPATH' ) ) { exit; } if ( ! class_exists( 'Premium_Templates' ) ) { /** * Class Premium_Templates */ class Premium_Templates { /** * Instance of the class * * @access private * @since 3.6.0 */ private static $instance = null; /** * Holds API data * * @access public * @since 3.6.0 */ public $api; /** * Holds templates configuration data * * @access public * @since 3.6.0 */ public $config; /** * Holds templates assets * * @access public * @since 3.6.0 */ public $assets; /** * Templates Manager * * @access public * @since 3.6.0 */ public $temp_manager; /** * Holds templates types * * @access public * @since 3.6.0 */ public $types; /** * Construct * * Class Constructor * * @since 3.6.0 * @access public */ public function __construct() { add_action( 'init', array( $this, 'init' ) ); } /** * Init Premium Templates * * @since 3.6.0 * @access public * * @return void */ public function init() { $this->load_files(); $this->set_config(); $this->set_assets(); $this->set_api(); $this->set_types(); $this->set_templates_manager(); } /** * Load required files for premium templates * * @since 3.6.0 * @access private * * @return void */ private function load_files() { require PREMIUM_ADDONS_PATH . 'includes/templates/classes/config.php'; require PREMIUM_ADDONS_PATH . 'includes/templates/classes/assets.php'; require PREMIUM_ADDONS_PATH . 'includes/templates/classes/manager.php'; require PREMIUM_ADDONS_PATH . 'includes/templates/types/manager.php'; require PREMIUM_ADDONS_PATH . 'includes/templates/classes/api.php'; } /** * Init `Premium_Templates_Core_Config` * * @since 3.6.0 * @access private * * @return void */ private function set_config() { $this->config = new Classes\Premium_Templates_Core_Config(); } /** * Init `Premium_Templates_Assets` * * @since 3.6.0 * @access private * * @return void */ private function set_assets() { $this->assets = new Classes\Premium_Templates_Assets(); } /** * Init `Premium_Templates_API` * * @since 3.6.0 * @access private * * @return void */ private function set_api() { $this->api = new Classes\Premium_Templates_API(); } /** * Init `Premium_Templates_Types` * * @since 3.6.0 * @access private * * @return void */ private function set_types() { $this->types = new Types\Premium_Templates_Types(); } /** * Init `Premium_Templates_Manager` * * @since 3.6.0 * @access private * * @return void */ private function set_templates_manager() { $this->temp_manager = new Classes\Premium_Templates_Manager(); } /** * Get instance * * Creates and returns an instance of the class * * @since 0.0.1 * @access public * * @return object */ public static function get_instance() { if ( ! isset( self::$instance ) ) { self::$instance = new self(); } return self::$instance; } } } if ( ! function_exists( 'premium_templates' ) ) { /** * Triggers `get_instance` method * * @since 3.6.0 * @access public * return object */ function premium_templates() { return Premium_Templates::get_instance(); } } premium_templates(); Aviator App: A Glimpse into Spribe’s Exciting Casino Game for Players in Malawi – WESTERN GLOBAL LOGISTICS

Aviator App: A Glimpse into Spribe’s Exciting Casino Game for Players in Malawi

 The Aviator game by Spribe has taken the online casino world by storm, especially appealing to players from Malawi looking for a thrilling and innovative gaming experience. Combining simplicity with engaging gameplay, Aviator offers a refreshing take on the traditional casino games. In this article, we will explore the features of the Aviator app, … Continue reading Aviator App: A Glimpse into Spribe’s Exciting Casino Game for Players in Malawi