PluginProbe
WpStream – Live Streaming, Video on Demand, Pay Per View / 4.8
WpStream – Live Streaming, Video on Demand, Pay Per View v4.8
4.14.1 4.14.0 4.13.2 4.13.1 4.13 4.12.5 4.12.4 4.12.3 4.12.2 4.12.1 4.12 4.4.4 4.4.5 4.4.6 4.4.7 4.4.8 4.4.9 4.5 4.5.1 4.5.11 4.5.11.1 4.5.11.2 4.5.11.4 4.5.11.5 4.5.11.6 All 181 releases
wpstream / hello-wpstream / elementor / wpstream-elementor.php

wpstream-elementor.php in WpStream – Live Streaming, Video on Demand, Pay Per View 4.8, at hello-wpstream/elementor/wpstream-elementor.php

168 lines 5.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 use Elementor\Plugin;
3 /**
4 * Elementor
5 *
6 * @package wpstream-theme
7 */
8
9 // Require file.
10 require_once plugin_dir_path( __FILE__ ) . 'wpstream-elementor-functions.php';
11 require_once plugin_dir_path( __FILE__ ) . 'functions/categories_functions.php';
12 require_once plugin_dir_path( __FILE__ ) . 'functions/blog_functions.php';
13 require_once plugin_dir_path( __FILE__ ) . 'functions/video_functions.php';
14 require_once plugin_dir_path( __FILE__ ) . 'functions/taxonomy-helpers.php';
15
16 add_action( 'wp_head', function () {
17 $elementor = Plugin::instance();
18 $global_styles = $elementor->kits_manager->get_active_kit_for_frontend()->get_settings();
19 $container_padding = $global_styles['container_padding'] ?? [];
20
21 if (
22 !empty( $container_padding['left'] ) &&
23 !empty( $container_padding['right'] ) &&
24 !empty( $container_padding['unit'] ) &&
25 is_numeric( $container_padding['left'] ) &&
26 is_numeric( $container_padding['right'] ) &&
27 in_array( $container_padding['unit'], ['px', '%', 'em', 'rem', 'vw', 'vh'] )
28 ) {
29 $left = floatval( $container_padding['left'] ) . esc_attr( $container_padding['unit'] );
30 $right = floatval( $container_padding['right'] ) . esc_attr( $container_padding['unit'] );
31
32 $style = sprintf(
33 '<style>html{--container-default-padding-right:%s;--container-default-padding-left:%s;}</style>',
34 esc_attr( $right ),
35 esc_attr( $left )
36 );
37
38 echo wp_kses( $style, [ 'style' => [] ] );
39 }
40 } );
41
42
43
44 add_action( 'elementor/widgets/register', 'wpstream_theme_register_new_widgets' );
45
46 /**
47 * Register custom Elementor widgets.
48 *
49 * This function registers various custom Elementor widgets by including their respective PHP files
50 * and then registering them with the given Elementor widgets manager.
51 *
52 * @param \Elementor\Widget_Manager $widgets_manager The Elementor widgets manager instance.
53 */
54 function wpstream_theme_register_new_widgets( $widgets_manager ) {
55
56
57 /**
58 *
59 * Blog Post widgets
60 *
61 */
62 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-recent-blog-post.php';
63 $widgets_manager->register( new \WpStreamTheme_Recent_Blog_Post() );
64
65 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstream-theme-blog-post-by-id.php';
66 $widgets_manager->register( new \WpStream_Theme_Blog_Post_By_Id() );
67
68 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-blog-post-slider.php';
69 $widgets_manager->register( new \WpStreamTheme_Blog_Post_Slider() );
70
71
72
73 /**
74 *
75 * Video Item widgets
76 *
77 */
78
79 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-recent-items.php';
80 $widgets_manager->register( new \WpStreamTheme_Recent_Items() );
81
82 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstream-theme-list-items-by-id.php';
83 $widgets_manager->register( new \WpStream_Theme_List_Items_By_Id() );
84
85 require_once plugin_dir_path(__FILE__) .'widgets/class-wpstreamtheme-items-slider.php';
86 $widgets_manager->register( new \WpStreamTheme_Items_Slider() );
87
88 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-items-top-bar.php';
89 $widgets_manager->register( new \WpStreamTheme_Items_Top_Bar() );
90
91
92 /**
93 *
94 * Categories widgets
95 *
96 */
97 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-categories-list.php';
98 $widgets_manager->register( new \WpStreamTheme_Categories_List() );
99
100 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-categories-slider.php';
101 $widgets_manager->register( new \WpStreamTheme_Categories_Slider() );
102
103 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-display-categories-as-tabs.php';
104 $widgets_manager->register( new \WpStreamTheme_Display_Categories_As_Tabs() );
105
106 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-categories-grid.php';
107 $widgets_manager->register( new \WpStreamTheme_Categories_Grid() );
108
109
110 /**
111 *
112 * Featured widgets
113 *
114 */
115 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-featured-article.php';
116 $widgets_manager->register( new \WpStreamTheme_Featured_Article() );
117
118 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-featured-video.php';
119 $widgets_manager->register( new \WpStreamTheme_Featured_Video() );
120
121
122 /**
123 *
124 * Other widgets
125 *
126 */
127
128 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-simple-player.php';
129 $widgets_manager->register( new \WpStreamTheme_Simple_Player() );
130
131
132 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-advanced-search.php';
133 $widgets_manager->register( new \WpStreamTheme_Advanced_Search() );
134
135 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstreamtheme-contact-form-builder.php';
136 $widgets_manager->register( new \WpStreamTheme_Contact_Form_Builder() );
137
138 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstream-theme-testimonial-slider.php' ;
139 $widgets_manager->register( new \WpStreamTheme_Testimonial_Slider() );
140
141
142 require_once plugin_dir_path(__FILE__) . 'widgets/class-wpstream-theme-featured--video-items-slider.php';
143 $widgets_manager->register( new \WpStreamTheme_Featured_Video_Items_Slider() );
144
145
146 }
147
148
149 add_action( 'elementor/elements/categories_registered', 'wpstream_theme_add_elementor_widget_categories' );
150
151 /**
152 * Add a custom category for WpStream Theme widgets to the Elementor widget manager.
153 *
154 * This function adds a custom category titled "WpStream Theme Widgets" with the specified icon
155 * to the Elementor widget manager for organizing widgets related to the WpStream theme.
156 *
157 * @param \Elementor\Elements_Manager $elements_manager The Elementor elements manager instance.
158 */
159 function wpstream_theme_add_elementor_widget_categories( $elements_manager ) {
160 $elements_manager->add_category(
161 'hello-wpstream',
162 array(
163 'title' => __( 'Hello WpStream - Theme Widgets', 'hello-wpstream' ),
164 'icon' => 'fa fa-home',
165 )
166 );
167 }
168