PluginProbe
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder / 51.1.83
King Addons for Elementor – 100+ Elementor Widgets, 4 000+ Elementor Templates, WooCommerce Builder, Mega Menu, Popup Builder v51.1.83
51.1.84 51.1.85 51.1.83 51.1.82 51.1.81 51.1.79 51.1.78 51.1.77 51.1.76 51.1.74 51.1.75 51.1.65 51.1.64 51.1.63 trunk 51.1.14 51.1.2 51.1.35 51.1.36 51.1.37 51.1.38 51.1.39 51.1.44 51.1.45 51.1.46 All 39 releases
← All changes | includes/widgets/Content_Ticker/Content_Ticker.php +15 -10 51.1.3551.1.83 View file →
@@ -55,8 +55,10 @@
55 55
56 56 public function get_style_depends()
57 57 {
58 58 return [
59 + // Required for Slick layout (e.g. .slick-track { display:flex; }) on frontend.
60 + KING_ADDONS_ASSETS_UNIQUE_KEY . '-slick-helper',
59 61 KING_ADDONS_ASSETS_UNIQUE_KEY . '-content-ticker-style',
60 62 KING_ADDONS_ASSETS_UNIQUE_KEY . '-general-general',
61 63 ];
62 64 }
@@ -1856,9 +1858,9 @@
1856 1858 }
1857 1859
1858 1860 public function get_main_query_args()
1859 1861 {
1860 - $settings = $this->get_settings();
1862 + $settings = Core::displaySettings($this);
1861 1863 $author = !empty($settings['query_author'])
1862 1864 ? implode(',', (array)$settings['query_author'])
1863 1865 : '';
1864 1866
@@ -1947,9 +1949,9 @@
1947 1949 }
1948 1950
1949 1951 public function get_tax_query_args()
1950 1952 {
1951 - $settings = $this->get_settings();
1953 + $settings = Core::displaySettings($this);
1952 1954 $tax_query = [];
1953 1955
1954 1956 // Related query uses a special approach
1955 1957 if ($settings['query_source'] === 'related') {
@@ -1980,9 +1982,9 @@
1980 1982 }
1981 1983
1982 1984 public function king_addons_content_ticker_dynamic()
1983 1985 {
1984 - $settings = $this->get_settings();
1986 + $settings = Core::displaySettings($this);
1985 1987 $posts = new WP_Query($this->get_main_query_args());
1986 1988
1987 1989 if ($posts->have_posts()) :
1988 1990 while ($posts->have_posts()) :
@@ -2042,9 +2044,9 @@
2042 2044 }
2043 2045
2044 2046 public function king_addons_content_ticker_heading()
2045 2047 {
2046 - $settings = $this->get_settings();
2048 + $settings = Core::displaySettings($this);
2047 2049 $heading_element = 'div';
2048 2050 $heading_link = $settings['heading_link']['url'] ?? '';
2049 2051 $this->add_render_attribute('heading_attribute', 'class', 'king-addons-ticker-heading');
2050 2052
@@ -2082,9 +2084,9 @@
2082 2084 }
2083 2085
2084 2086 public function king_addons_content_ticker_slider()
2085 2087 {
2086 - $settings = $this->get_settings();
2088 + $settings = Core::displaySettings($this);
2087 2089 $slider_is_rtl = is_rtl();
2088 2090 $slider_direction = $slider_is_rtl ? 'rtl' : 'ltr';
2089 2091
2090 2092 // Fallback for premium code
@@ -2095,13 +2097,16 @@
2095 2097 // Slider options
2096 2098 $slider_options = [
2097 2099 'arrows' => false,
2098 2100 'autoplay' => ($settings['slider_autoplay'] === 'yes'),
2099 - 'autoplaySpeed' => absint($settings['slider_autoplay_duration'] * 1000),
2101 + 'autoplaySpeed' => absint(Core::jsNumber($settings, 'slider_autoplay_duration', 3) * 1000),
2100 2102 'infinite' => ($settings['slider_loop'] === 'yes'),
2101 - 'pauseOnHover' => $settings['slider_pause_on_hover'],
2103 + 'pauseOnHover' => ($settings['slider_pause_on_hover'] === 'yes'),
2104 + // Prevent Slick from pausing when slide links get focus.
2105 + 'pauseOnFocus' => false,
2106 + 'pauseOnDotsHover' => false,
2102 2107 'rtl' => $slider_is_rtl,
2103 - 'speed' => absint($settings['slider_effect_duration'] * 1000),
2108 + 'speed' => absint(Core::jsNumber($settings, 'slider_effect_duration', 1) * 1000),
2104 2109 ];
2105 2110
2106 2111 if ($settings['slider_effect'] === 'vr-slide') {
2107 2112 $slider_options['vertical'] = true;
@@ -2116,9 +2121,9 @@
2116 2121
2117 2122 $this->add_render_attribute('ticker-slider-attribute', [
2118 2123 'class' => 'king-addons-ticker-slider',
2119 2124 'dir' => $slider_direction,
2120 - 'data-slick' => wp_json_encode($slider_options),
2125 + 'data-slick-options' => wp_json_encode($slider_options),
2121 2126 ]);
2122 2127
2123 2128 if ($settings['content_gradient_position'] !== 'none') {
2124 2129 $this->add_render_attribute('ticker-slider-attribute', 'class', 'king-addons-ticker-gradient');
@@ -2150,9 +2155,9 @@
2150 2155 }
2151 2156
2152 2157 protected function render()
2153 2158 {
2154 - $settings = $this->get_settings();
2159 + $settings = Core::displaySettings($this);
2155 2160 ?>
2156 2161 <div class="king-addons-content-ticker">
2157 2162 <?php
2158 2163 // Heading section (icon/text) if needed