Plugin Directory

Changeset 3420718


Ignore:
Timestamp:
12/16/2025 07:46:25 AM (3 months ago)
Author:
akashdev321
Message:

Added News Ticker Widget

Location:
widget-studio-for-elementor
Files:
96 added
6 edited

Legend:

Unmodified
Added
Removed
  • widget-studio-for-elementor/trunk/dashboard/wsfe_dashboard.php

    r3418406 r3420718  
    4444        </div>
    4545
     46        <?php
     47            //Widget Lists
     48            $wsfe_widget_lists = [
     49                'wsfe_back_to_top_btn' => 'BackToTop Button',
     50                'wsfe_picture_scroller' => 'Picture Scroller',
     51                'wsfe_registration_form' => 'Registration Form',
     52                'wsfe_shadow_heading' => 'Shadow Heading',
     53                'wsfe_vertical_timeline' => 'Vertical Timeline',
     54                'wsfe_split_action_button' => 'Split Action Button',
     55                'wsfe_news_ticker' => 'News Ticker',
     56            ];
     57           
     58            // Sort the array
     59            asort($wsfe_widget_lists);
     60        ?>
    4661        <div class="wsfe_widgets_list">
    47             <div class="wsfe_widget_card">
    48                 <h3><?php esc_html_e( 'BackToTop Button', 'widget-studio-for-elementor' ); ?></h3>
    49                 <label class="toggle">
    50                     <input class="toggle-checkbox" type="checkbox" value="wsfe_back_to_top_btn" onchange="wsfe_toggle_widget(this)" <?php echo $wsfe_back_to_top_btn == 'checked' ? 'checked' : ''; ?>>
    51                     <div class="toggle-switch"></div>
    52                 </label>
    53             </div>
    54 
    55             <div class="wsfe_widget_card">
    56                 <h3><?php esc_html_e( 'Picture Scroller', 'widget-studio-for-elementor' ); ?></h3>
    57                 <label class="toggle">
    58                     <input class="toggle-checkbox" type="checkbox" value="wsfe_picture_scroller" onchange="wsfe_toggle_widget(this)" <?php echo $wsfe_picture_scroller == 'checked' ? 'checked' : ''; ?>>
    59                     <div class="toggle-switch"></div>
    60                 </label>
    61             </div>
    62 
    63             <div class="wsfe_widget_card">
    64                 <h3><?php esc_html_e( 'Registration Form', 'widget-studio-for-elementor' ); ?></h3>
    65                 <label class="toggle">
    66                     <input class="toggle-checkbox" type="checkbox" value="wsfe_registration_form" onchange="wsfe_toggle_widget(this)" <?php echo $wsfe_reg_form == 'checked' ? 'checked' : ''; ?>>
    67                     <div class="toggle-switch"></div>
    68                 </label>
    69             </div>
    70 
    71             <div class="wsfe_widget_card">
    72                 <h3><?php esc_html_e( 'Shadow Heading', 'widget-studio-for-elementor' ); ?></h3>
    73                 <label class="toggle">
    74                     <input class="toggle-checkbox" type="checkbox" value="wsfe_shadow_heading" onchange="wsfe_toggle_widget(this)" <?php echo $wsfe_shadow_heading == 'checked' ? 'checked' : ''; ?>>
    75                     <div class="toggle-switch"></div>
    76                 </label>
    77             </div>
    78 
    79             <div class="wsfe_widget_card">
    80                 <h3><?php esc_html_e( 'Split Action Button', 'widget-studio-for-elementor' ); ?></h3>
    81                 <label class="toggle">
    82                     <input class="toggle-checkbox" type="checkbox" value="wsfe_split_action_button" onchange="wsfe_toggle_widget(this)" <?php echo $wsfe_split_action_button == 'checked' ? 'checked' : ''; ?>>
    83                     <div class="toggle-switch"></div>
    84                 </label>
    85             </div>
    86 
    87             <div class="wsfe_widget_card">
    88                 <h3><?php esc_html_e( 'Vertical Timeline', 'widget-studio-for-elementor' ); ?></h3>
    89                 <label class="toggle">
    90                     <input class="toggle-checkbox" type="checkbox" value="wsfe_vertical_timeline" onchange="wsfe_toggle_widget(this)" <?php echo $wsfe_vertical_timeline == 'checked' ? 'checked' : ''; ?>>
    91                     <div class="toggle-switch"></div>
    92                 </label>
    93             </div>
    94         </div>
     62            <?php
     63            foreach( $wsfe_widget_lists as $wsfe_widget_list => $wsfe_list_value ){
     64                $wsfe_widget_checked = Wsfe_Options::get_option( $wsfe_widget_list );
     65           
     66                echo '<div class="wsfe_widget_card">
     67                    <h3>'. esc_html( $wsfe_list_value ) .'</h3>
     68                    <label class="toggle">
     69                        <input class="toggle-checkbox" type="checkbox" value="'. esc_attr($wsfe_widget_list) .'" onchange="wsfe_toggle_widget(this)" '.( $wsfe_widget_checked == 'checked' ? 'checked' : '' ).'>
     70                        <div class="toggle-switch"></div>
     71                    </label>
     72                </div>';
     73            }
     74            ?>
     75        </div>
    9576
    9677        <div class="wsfe_more_widgets_coming_msg">
  • widget-studio-for-elementor/trunk/includes/widget-loader.php

    r3342678 r3420718  
    1818        require_once WSFE_PATH . 'widgets/verticle-timeline-widget.php';
    1919        require_once WSFE_PATH . 'widgets/split-action-button-widget.php';
     20        require_once WSFE_PATH . 'widgets/news-ticker.php';
    2021
    21         if( Wsfe_Options::get_option( 'wsfe_registration_form' ) == 'checked' ){
    22             $widgets_manager->register( new \WSFE_Register_Form_Widget() );
     22        $wsfe_widget_lists = [
     23            'wsfe_back_to_top_btn' => '\WSFE_Back_To_Top_Widget',
     24            'wsfe_picture_scroller' => '\WSFE_Picture_Scroller_Widget',
     25            'wsfe_registration_form' => '\WSFE_Register_Form_Widget',
     26            'wsfe_shadow_heading' => '\WSFE_Shadow_Heading_Widget',
     27            'wsfe_vertical_timeline' => '\WSFE_Timeline_Widget',
     28            'wsfe_split_action_button' => '\WSFE_Split_Action_Button_Widget',
     29            'wsfe_news_ticker' => '\WSFE_Ticker_Widget',
     30        ];
     31
     32        foreach( $wsfe_widget_lists as $wsfe_widget_list => $wsfe_list_value ){
     33            if( Wsfe_Options::get_option( $wsfe_widget_list ) == 'checked' ){
     34                $widgets_manager->register( new $wsfe_list_value() );
     35            }
    2336        }
    2437
    25         if( Wsfe_Options::get_option( 'wsfe_picture_scroller' ) == 'checked' ){
    26             $widgets_manager->register( new \WSFE_Picture_Scroller_Widget() );
    27         }
    28         if( Wsfe_Options::get_option( 'wsfe_back_to_top_btn' ) == 'checked' ){
    29             $widgets_manager->register( new \WSFE_Back_To_Top_Widget() );
    30         }
    31         if( Wsfe_Options::get_option( 'wsfe_shadow_heading' ) == 'checked' ){
    32             $widgets_manager->register( new \WSFE_Shadow_Heading_Widget() );
    33         }
    34         if( Wsfe_Options::get_option( 'wsfe_vertical_timeline' ) == 'checked' ){
    35             $widgets_manager->register( new \WSFE_Timeline_Widget() );
    36         }
     38        // if( Wsfe_Options::get_option( 'wsfe_registration_form' ) == 'checked' ){
     39        //     $widgets_manager->register( new \WSFE_Register_Form_Widget() );
     40        // }
     41
     42        // if( Wsfe_Options::get_option( 'wsfe_picture_scroller' ) == 'checked' ){
     43        //     $widgets_manager->register( new \WSFE_Picture_Scroller_Widget() );
     44        // }
     45        // if( Wsfe_Options::get_option( 'wsfe_back_to_top_btn' ) == 'checked' ){
     46        //     $widgets_manager->register( new \WSFE_Back_To_Top_Widget() );
     47        // }
     48        // if( Wsfe_Options::get_option( 'wsfe_shadow_heading' ) == 'checked' ){
     49        //     $widgets_manager->register( new \WSFE_Shadow_Heading_Widget() );
     50        // }
     51        // if( Wsfe_Options::get_option( 'wsfe_vertical_timeline' ) == 'checked' ){
     52        //     $widgets_manager->register( new \WSFE_Timeline_Widget() );
     53        // }
    3754       
    38         if( Wsfe_Options::get_option( 'wsfe_split_action_button' ) == 'checked' ){
    39             $widgets_manager->register( new \WSFE_Split_Action_Button_Widget() );
    40         }
    41  
     55        // if( Wsfe_Options::get_option( 'wsfe_split_action_button' ) == 'checked' ){
     56        //     $widgets_manager->register( new \WSFE_Split_Action_Button_Widget() );
     57        // }
     58        //  $widgets_manager->register( new \WSFE_Ticker_Widget() );
    4259    }
    4360}
  • widget-studio-for-elementor/trunk/includes/wsfe-enqueue.php

    r3342678 r3420718  
    22if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
    33
     4// Enqueue Scripts and Styles Vertical Timeline Widget
    45wp_register_style( 'wsfe_vertical_timeline', WSFE_URL . 'assets/css/wsfe_vertical_timeline.css', [], WSFE_PLUGIN_VERSION, 'all' );
    56wp_register_style( 'wsfe_split_action_button', WSFE_URL . 'assets/css/wsfe_split_action_button.css', [], WSFE_PLUGIN_VERSION, 'all' );
     7
     8//  Enqueue Scripts and Styles News Ticker Widget
     9wp_register_style( 'wsfe_news_ticker', WSFE_URL . 'assets/css/wsfe_news_ticker.css', [], WSFE_PLUGIN_VERSION, 'all' );
     10wp_register_script( 'wsfe_news_ticker', WSFE_URL . 'assets/js/wsfe_news_ticker.js', ['jquery'], WSFE_PLUGIN_VERSION, true );
  • widget-studio-for-elementor/trunk/readme.txt

    r3418406 r3420718  
    55Tested up to: 6.9
    66Requires PHP: 8.0
    7 Stable tag: 1.0.2
     7Stable tag: 1.0.3
    88License: GPLv2 or later
    99License URI: https://www.gnu.org/licenses/gpl-2.0.html
     
    3131Yes. It's built to work with any well-coded WordPress theme.
    3232
     33= Is it compatible with Gutenberg? =
     34No. It doesn't work with Gutenberg.
     35
    3336
    3437== Screenshots ==
     
    5053* Added New Widgets with customizable typography, color options and more
    5154   
     55= 1.0.3 =
     56* Added News Ticker widget
     57*Improved widget performance
    5258
    5359== Upgrade Notice ==
     
    6369* Added New Widgets with customizable typography, color options and more
    6470
     71= 1.0.3 =
     72* Added News Ticker widget
     73* Improved widget performance
     74
    6575
    6676
     
    73835. Split Action Button
    74846. Vertical Timeline
     857. News Ticker
    7586
    7687More widgets are coming soon!
  • widget-studio-for-elementor/trunk/widget-studio-for-elementor.php

    r3342678 r3420718  
    33 * Plugin Name: Widget Studio for Elementor
    44 * Description: Widget Studio for Elementor is a lightweight, extendable toolkit that adds powerful custom widgets to your Elementor builder. It helps you build stunning websites with ease.
    5  * Version: 1.0.2
     5 * Version: 1.0.3
    66 * Author: Akash Halder
    77 * Author URI: https://coderakash.com
     
    1717define( 'WSFE_URL', plugin_dir_url( __FILE__ ) );
    1818define( 'WSFE_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
    19 const WSFE_PLUGIN_VERSION = '1.0.2';
     19const WSFE_PLUGIN_VERSION = '1.0.3';
    2020
    2121final class Widget_Studio_For_Elementor {
  • widget-studio-for-elementor/trunk/widgets/verticle-timeline-widget.php

    r3342678 r3420718  
    77use Elementor\Group_Control_Background;
    88use Elementor\Group_Control_Typography;
    9 use Elementor\Group_Control_Border;
    109
    1110
Note: See TracChangeset for help on using the changeset viewer.