Happy Addons for Elementor (Mega Menu, Post Grid, Woocommerce Product Grid, Table, Event Calendar, Slider Elementor Widget) - Version 3.7.2

Version Description

  • 20 November 2022 =

  • Fix: Equal Height is not working on Tablet.

  • Fix: Pricing Table's Feature title is not working with
    tag.

  • Fix: The Post Tab widget is showing all posts on the page load.

  • Fix: The News Ticker widget display only 5 posts.

Download this release

Release Info

Developer thehappymonster
Plugin Icon 128x128 Happy Addons for Elementor (Mega Menu, Post Grid, Woocommerce Product Grid, Table, Event Calendar, Slider Elementor Widget)
Version 3.7.2
Comparing to
See all releases

Code changes from version 3.7.1 to 3.7.2

assets/js/extension-equal-height.js CHANGED
@@ -37,11 +37,11 @@
37
  mobileWidth = elementorFrontendConfig.breakpoints.md,
38
  tabletWidth = elementorFrontendConfig.breakpoints.lg;
39
 
40
- if (this.getElementSettings('_ha_eqh_disable_on_mobile') && windowWidth < mobileWidth) {
41
  return true;
42
  }
43
 
44
- if (this.getElementSettings('_ha_eqh_disable_on_tablet') && windowWidth >= mobileWidth && windowWidth < tabletWidth) {
45
  return true;
46
  }
47
 
@@ -63,7 +63,7 @@
63
  bindEvents: function bindEvents() {
64
  if (this.isEqhEnabled()) {
65
  this.run();
66
- $window.on('resize orientationchange', debounce(this.run.bind(this), 80));
67
  }
68
  },
69
  onElementChange: debounce(function (prop, ele) {
37
  mobileWidth = elementorFrontendConfig.breakpoints.md,
38
  tabletWidth = elementorFrontendConfig.breakpoints.lg;
39
 
40
+ if ('yes' == this.getElementSettings('_ha_eqh_disable_on_mobile') && windowWidth < mobileWidth) {
41
  return true;
42
  }
43
 
44
+ if ('yes' == this.getElementSettings('_ha_eqh_disable_on_tablet') && windowWidth >= mobileWidth && windowWidth < tabletWidth) {
45
  return true;
46
  }
47
 
63
  bindEvents: function bindEvents() {
64
  if (this.isEqhEnabled()) {
65
  this.run();
66
+ $window.on('resize scroll orientationchange', debounce(this.run.bind(this), 80));
67
  }
68
  },
69
  onElementChange: debounce(function (prop, ele) {
assets/js/extension-equal-height.min.js CHANGED
@@ -37,11 +37,11 @@
37
  mobileWidth = elementorFrontendConfig.breakpoints.md,
38
  tabletWidth = elementorFrontendConfig.breakpoints.lg;
39
 
40
- if (this.getElementSettings('_ha_eqh_disable_on_mobile') && windowWidth < mobileWidth) {
41
  return true;
42
  }
43
 
44
- if (this.getElementSettings('_ha_eqh_disable_on_tablet') && windowWidth >= mobileWidth && windowWidth < tabletWidth) {
45
  return true;
46
  }
47
 
@@ -63,7 +63,7 @@
63
  bindEvents: function bindEvents() {
64
  if (this.isEqhEnabled()) {
65
  this.run();
66
- $window.on('resize orientationchange', debounce(this.run.bind(this), 80));
67
  }
68
  },
69
  onElementChange: debounce(function (prop, ele) {
37
  mobileWidth = elementorFrontendConfig.breakpoints.md,
38
  tabletWidth = elementorFrontendConfig.breakpoints.lg;
39
 
40
+ if ('yes' == this.getElementSettings('_ha_eqh_disable_on_mobile') && windowWidth < mobileWidth) {
41
  return true;
42
  }
43
 
44
+ if ('yes' == this.getElementSettings('_ha_eqh_disable_on_tablet') && windowWidth >= mobileWidth && windowWidth < tabletWidth) {
45
  return true;
46
  }
47
 
63
  bindEvents: function bindEvents() {
64
  if (this.isEqhEnabled()) {
65
  this.run();
66
+ $window.on('resize scroll orientationchange', debounce(this.run.bind(this), 80));
67
  }
68
  },
69
  onElementChange: debounce(function (prop, ele) {
changelog.txt CHANGED
@@ -1,3 +1,10 @@
 
 
 
 
 
 
 
1
  = 3.7.1 - 18 October 2022 =
2
 
3
  - Tweak: Scroll To Top feature enhancements like customize the icon, text, and image, and enable or disable the feature for different devices. Plus, we've fixed the page refresh issue when making changes to the settings
1
+ = 3.7.2 - 20 November 2022 =
2
+
3
+ - Fix: Equal Height is not working on Tablet.
4
+ - Fix: Pricing Table's Feature title is not working with <br> tag.
5
+ - Fix: The Post Tab widget is showing all posts on the page load.
6
+ - Fix: The News Ticker widget display only 5 posts.
7
+
8
  = 3.7.1 - 18 October 2022 =
9
 
10
  - Tweak: Scroll To Top feature enhancements like customize the icon, text, and image, and enable or disable the feature for different devices. Plus, we've fixed the page refresh issue when making changes to the settings
classes/ajax-handler.php CHANGED
@@ -226,8 +226,8 @@ class Ajax_Handler {
226
  $excerpt = $settings['excerpt'];
227
  $title_tag = $settings['title_tag'];
228
  $term_id = $_POST['term_id'];
229
- $orderby = $_POST['orderby'];
230
- $order = $_POST['order'];
231
 
232
  $args = [
233
  'post_status' => 'publish',
226
  $excerpt = $settings['excerpt'];
227
  $title_tag = $settings['title_tag'];
228
  $term_id = $_POST['term_id'];
229
+ $orderby = $settings['orderby'];
230
+ $order = $settings['order'];
231
 
232
  $args = [
233
  'post_status' => 'publish',
extensions/scroll-to-top-kit-settings.php CHANGED
@@ -106,7 +106,7 @@ class Scroll_To_Top_Kit_Setings extends Tab_Base {
106
  ],
107
  ],
108
  $device_default
109
- ),
110
  );
111
 
112
  $this->add_control(
106
  ],
107
  ],
108
  $device_default
109
+ )
110
  );
111
 
112
  $this->add_control(
plugin.php CHANGED
@@ -4,11 +4,11 @@
4
  * Plugin Name: Happy Elementor Addons
5
  * Plugin URI: https://happyaddons.com/
6
  * Description: <a href="https://happyaddons.com/">Happy Addons for Elementor</a> Is the Best Elementor Addons Comes With 44+ Free Elementor Widgets Including Table Builder, Testimonial, Event Calendar,Slider,News Ticker, Image Grid, etc & Features Like Elementor Equal Height, Text Stroke, Shape Dividers, Floating Effect, Grid Layout, 500+ Elementor Icons, 450+ Template Packs & More.
7
- * Version: 3.7.1
8
  * Author: weDevs
9
  * Author URI: https://happyaddons.com/
10
- * Elementor tested up to: 3.7.8
11
- * Elementor Pro tested up to: 3.7.7
12
  * License: GPLv2
13
  * License URI: https://www.gnu.org/licenses/gpl-2.0.html
14
  * Text Domain: happy-elementor-addons
@@ -41,7 +41,7 @@ defined('ABSPATH') || die();
41
  if ( defined( 'HAPPY_ADDONS_DEV' ) && true == HAPPY_ADDONS_DEV ) {
42
  define('HAPPY_ADDONS_VERSION', time() );
43
  } else {
44
- define('HAPPY_ADDONS_VERSION', '3.7.1');
45
  }
46
  define('HAPPY_ADDONS__FILE__', __FILE__);
47
  define('HAPPY_ADDONS_DIR_PATH', plugin_dir_path(HAPPY_ADDONS__FILE__));
4
  * Plugin Name: Happy Elementor Addons
5
  * Plugin URI: https://happyaddons.com/
6
  * Description: <a href="https://happyaddons.com/">Happy Addons for Elementor</a> Is the Best Elementor Addons Comes With 44+ Free Elementor Widgets Including Table Builder, Testimonial, Event Calendar,Slider,News Ticker, Image Grid, etc & Features Like Elementor Equal Height, Text Stroke, Shape Dividers, Floating Effect, Grid Layout, 500+ Elementor Icons, 450+ Template Packs & More.
7
+ * Version: 3.7.2
8
  * Author: weDevs
9
  * Author URI: https://happyaddons.com/
10
+ * Elementor tested up to: 3.8.1
11
+ * Elementor Pro tested up to: 3.8.1
12
  * License: GPLv2
13
  * License URI: https://www.gnu.org/licenses/gpl-2.0.html
14
  * Text Domain: happy-elementor-addons
41
  if ( defined( 'HAPPY_ADDONS_DEV' ) && true == HAPPY_ADDONS_DEV ) {
42
  define('HAPPY_ADDONS_VERSION', time() );
43
  } else {
44
+ define('HAPPY_ADDONS_VERSION', '3.7.2');
45
  }
46
  define('HAPPY_ADDONS__FILE__', __FILE__);
47
  define('HAPPY_ADDONS_DIR_PATH', plugin_dir_path(HAPPY_ADDONS__FILE__));
readme.txt CHANGED
@@ -1,6 +1,6 @@
1
- === Happy Addons for Elementor (Mega Menu, Post Grid, Woocommerce Product Grid, Table, Event Calendar, Slider Elementor Widget) ===
2
- Plugin Name: Happy Addons for Elementor (Mega Menu, Post Grid, Woocommerce Product Grid, Table, Event Calendar, Slider Elementor Widget)
3
- Version: 3.7.1
4
  Author: weDevs
5
  Author URI: https://happyaddons.com/
6
  Contributors: happyaddons, thehappymonster, wedevs
@@ -12,479 +12,484 @@ Requires PHP: 5.4
12
  License: GPLv2
13
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
14
 
15
- [Happy Addons for Elementor](https://happyaddons.com/) Is the Best Elementor Addons Comes With 48+ Free Elementor Widgets Including Table Builder, Testimonial, Event Calendar,Slider,News Ticker, Image Grid, etc & Features Like Elementor Equal Height, Text Stroke, Shape Dividers, Floating Effect, Grid Layout, 500+ Elementor Icons, 450+ Template Packs & More.
16
 
17
  == Description ==
18
 
19
- [Happy Addons for Elementor page builder](https://happyaddons.com/) Is One of the Best Elementor Addons That Comes With **114+ Elementor Free & Pro Widgets and 22+ Problem-Solving Elementor Features**. And HappyAddons Elementor widgets are not limited to customizations. All the Elementor widget is stand out from other third-party elementor addons widgets in terms of flexibility of customizations. Also, we are not locking the features of Elementor widgets in the free versions. All the free Elementor widgets are like our premium elementor widgets. HappyAddons for Elementor (**Mega Menu Builder, Elementor Template, Post Grid, Woocommerce Product Grid, Table, Tooltips, Slider Elementor Widget**) will broaden your elementor related designing skills. Our **70+ full-page Elementor Templates and 400+ readymade elementor blocks** will help you to kickstart your works swiftly. So try Happy Elementor Addon to create amazing Elementor Websites.
20
-
21
-
22
- **WHY SHOULD YOU CHOOSE HAPPYADDONS FOR ELEMENTOR?**
23
-
24
- HappyAddons is the pioneer of adding exclusive problem-solving Elementor features. Also, we have added premium quality Elementor Widgets in the Elementor Widget Library. Reasons for choosing Happyaddons over any other Elementor Addons:
25
-
26
-
27
-
28
- 1. From now on, you can create an Elementor mega menu, simple navigation menu, Horizontal Nav Menu with our Happy Elementor Menu Widget.
29
- 2. Create off canvas contents or of canvas elementor menu for your site with Happy Elementor Addons off-canvas elementor widget
30
- 3. Manage one page navigation elementor menu with the help of HappyAddons One Page Navigation Elementor widget
31
- 4. You Can Create an Advanced Data Table within elementor.
32
- 5. Ability to add google sheet to your elementor website.
33
- 6. Facility to Add Text Stroke or Outline to Elementor Typography
34
- 7. Manage Your Event Calendars,
35
- 8. Add google calendar within Elementor using the Event calendar elementor widget.
36
- 9. Design Your Woocommerce Sites with HappyAddons WooCommerce Elementor widget pack.
37
- 10. WooCommerce product grid page with HappyAddons elementor product grid widget.
38
- 11. Create Product carousel with HappyAddons Product carousel Elementor widget.
39
- 12. Create blog grid or post gird or blog archive page with Happy Elementor Post Grid widget
40
- 13. Add post carousel to your Elementor site with HappyAddons Elementor Post Carousel widget
41
- 14. Copy and Paste All of Your Elements Within Cross-Domain elementor sites,
42
- 15. Masking Your Images Into Different Shapes Within the Elementor Editing Panel,
43
- 16. Flexibility to Create Advance Background Parallax for Your Elementor Site,
44
- 17. Create Elementor tooltips within any element of the Elementor site.
45
- 18. Create a stunning pricing menu with the Elementor Price Menu Widget.
46
- 19. Unfold any elementor element with HappyAddons Elementor unfold widget
47
- 20. Toggle your content with the Elementor content switcher widget.
48
- 21. 500+ elementor line icons for your elementor sites.
49
- 22. 450+ Readymade Elementor Template Kits to Use,
50
- 23. Moreover, You Can Copy Happy Elementor Addons Demo Contents Directly from Our [demo site](https://demo.happyaddons.com/) and much more.
51
- 24. Officially recommended by Elementor Page Builder! We are now listed on their [official addons page](https://elementor.com/addons/).
52
- 25. This Elementor Page Builder Addon is the latest addition to the list of [weDevs](https://wedevs.com/) premium product libraries. **weDevs is famous for reliable after-sales service**.
53
-
54
-
55
- **WHAT YOU WILL GET IN HAPPY ELEMENTOR ADDONS FREE VERSION**
56
-
57
-
58
- **49 Free Elementor Widgets Are Available in the HappyAddons Free**
59
-
60
- HappyAddons comes with plenty of Elementor Widgets in the free version. And all of the elementor widgets are full of customization. Also, we have created elementor design inspiration for each and every single elementor widget. Let’s have a look at what you will get in our free version of HappyAddons for Elementor:
61
-
62
-
63
-
64
- * **[Card](https://demo.happyaddons.com/elementor-card-widget-demo/)** Incredibly powerful widget to demonstrate your products, articles, news, creative posts using a beautiful combination of texts, links, badges, and images. Using built-in positioning and offset features you can create eye-candy designs in a twist.
65
- Our elementor card widget will help you to create mesmerizing card items within elementor widget. You can add custom badge items to the Elementor card widget. Also, you can add images, custom buttons to the Elementor Card widget of the Happy Elementor Addon. Check our elementor card widget from our demo site. If you like the demo design you directly use the card items directly to your elementor website with our live copy feature of HappyAddons Pro.
66
-
67
- * **[Info Box](https://demo.happyaddons.com/elementor-info-box-widget-demo/)** – Our Elementor Info Box widget will help you to create beautiful information boxes using icons, links, and texts and this makes them slick using the built-in positioning features. This Elementor Info box widget is different from our Elementor card widget. Elementor info box widget will allow you to add elementor heading and elementor descriptions and elementor button within it. Also, you will get the flexibility to customize the heading, button, image, or icon of the elementor info box widget. Check the demos of the Happy Elementor Addons info box widget for the Elementor page builder.
68
-
69
- * **[Icon Box](https://demo.happyaddons.com/elementor-icon-box-widget-demo/)** – Elementor Icon Box widget is a simplified version of Infobox but comes with powerful display features. Perfect for showcasing interesting information to your users in various styles. HappyAddons elementor icon box widget is easy to customize. Within this Elementor icon box, you will get ‘Icon‘ to set the icon size, add padding, border, box-shadow. You can also add a hover effect to your icon of the Elementor icon box widget. Moreover, you will get the flexibility to add Title‘ so that you can set text type using typography, add text-shadow, text color within the icon box widget for elementor. Check our elementor icon box widget from our demo site. If you like the demo design you directly use the card items directly to your elementor website with our live copy feature of Happy Elementor Addons Pro.
70
-
71
- * **[Skill Bars](https://demo.happyaddons.com/elementor-skill-bars-widget-demo/)** – Elemento Skill Bar Widget is an essential building block to showcase user skills, task percentage, required tools, and other progressive information in different ways. Happy elementor addons skill bars elementor widget comes with incredible customizing options to suit your needs. You can use the Team Skill Bars Elementor Widget to create beautiful designs. ‘Text Color’, ‘Level Color’,’ Base Color’ is available in the HappyAddons elementor skill bar widget. By using the coloring option of the Elementor Skill Bars widget you can stand out your skillset from others. This elementor skill bar widget will help you to showcase your different skillset on your Elementor website. Also, help you to increase the credibility of your portfolio. Use the skill bars widget for elementor to stand out yourself in the crowd as there are no design limitations in the Happy Addons Skill bar elementor widget.
72
-
73
- * **[Review](https://demo.happyaddons.com/elementor-review-widget-demo/)** – Showcase your user feedback, reviews, and rating more easily than ever using our review widget. Display user photos, texts, and star ratings. Make them stand out using built-in offsets and positioning features. User reviews and testimonials are so important to build your user's trust for your brand and the HappyAddons Elementor Review widget will be the best option for you to show Reviews on the site without any hassle. What are you getting in the elementor review widget! You can style your reviews by clicking on the 'Review' option. It is possible to set a maximum rating a user can give, such as 4.8 or even 5. Users can give reviews in stars or in numbers. You can also set the review position whether it should be on top or bottom within the HappyAddons Elementor Review Widget. Also, you can customize the Reviewer image in the Elementor Review Widget. Try Happy elementor addons Review widget for Elementor.
74
-
75
- * **[Image Compare](https://demo.happyaddons.com/elementor-image-compare-widget-demo/)** – Are you a photo-editor, agency, or product designer who often needs to showcase their beautiful works in a form of a before and after slider? The Elementor Image compare widget is perfect for this job. And built-in styling options, vertical and horizontal orientation features can help you design these before-after sections with more creativity. Our image compares elementor widget will help you to compare between your two product images Old Vs New in an amazing way. By maintaining a perfect image resolution, it will be able to detect major changes in the product. Get ready to showcase your product comparison exclusively by using HappyAddons Elementor Image Compare widget.
76
-
77
- * **[Gradient Heading](https://demo.happyaddons.com/elementor-gradient-heading-widget-demo/)** – Another gem to create eye candy Elementor headings for your websites. You can apply different gradient styles, angles, opacity, and positions to make them look even better across different device screens to our Elementor Gradient Heading widget. It is the easiest way to add a gradient to your headlines and titles inside of the Elementor page builder. So don’t waste your time creating a custom-coded gradient heading within your Elementor site, use the HappyAddons Gradient Heading widget for Elementor to make an amazing gradient Heading for your elementor site.
78
-
79
- * **[Team Member](https://demo.happyaddons.com/elementor-team-member-widget-demo/)** – A perfect elementor widget to showcase your beautiful team in various styles using texts, images, and social links. And just like our other widgets, you will find powerful styling options to make them stand out quite easily. Set your employee name, job title. You can add a short bio of his/her job if you want. Resize your texts using the headers h1 to h6. You can move the image left, right, center using the alignment option. Also you have the option to add social media links with social icons of your team members in the Happy Addons team member widget for Elementor. So you will get the ultimate team member features within elementor team member widget.
80
-
81
- * **[Dual Button](https://demo.happyaddons.com/elementor-dual-button-widget-demo/)** – DualButton widget allows you to add two flexible and trendy action buttons in your sections, in different styles. Usually, elementor buttons don’t have the facility to add additional content like or, but, & type of linker within two elementor buttons. Also, it will help you not to create so many doms for creating simple buttons. Try our elementor dual button widget.
82
-
83
- * **[Number](https://demo.happyaddons.com/elementor-number-widget-demo/)** – Simply beautiful, this widget can help you create stunning number blocks with various styles, look-n-feels that are literally going to blow your mind. Elementor Number widget is familiar to show numbers on websites. It could be anything related to number stat. Also, you will get the flexibility to customize the Elementor Number Widget. This elementor widget is a very lightweight one. So try the number widget for elementor.
84
-
85
- * **[Justified Grid](https://demo.happyaddons.com/elementor-justified-grid-widget-demo/)** – Another pro-grade widget that can help you to create a beautiful justified grid. It comes packed with tons of options to make it stand out from the crowd. This Elementor Grid widget will help you to create isotope gallery items within your Elementor site. Also, you can add a hover effect to the justified images of the Elementor Justified Grid widget.
86
-
87
- * **[Testimonial](https://demo.happyaddons.com/elementor-testimonial-widget-demo/)** – Create beautiful testimonial sections with different look-and-feels using the HappyAddons Testimonial widget. Elementor testimonial widget will help you to create a trust for your users. This Testimonial widget for Elementor comes with plenty of customizations. You don’t have to create any custom post types to show a testimonial for your websites. You can manage it from the Elementor editor panel. Also, you can add testimonial providers' avatars and designation to make them more credible for your users. It’s a smart testimonial widget for Elementor. Try Elementor Testimonial Widget to make a trustworthy product or website.
88
-
89
- * **[Logo Grid](https://demo.happyaddons.com/elementor-logo-grid-widget-demo)** Showcase your clients or products using our Elementor logo grid widget, and display these items with styles. Elementor Logo Grid widget is one of the best Widget HappyAddons for Elementor. This elementor widget will help you to create an amazing logo grid within your Elementor site. And this is a unique item within among elementor addons. You can show your clients logo items in a grid way with the help of the Elementor Logo Grid widget. So try the Elementor Logo Grid widget to showcase your logo items.
90
-
91
- * **[Slider](https://demo.happyaddons.com/elementor-slider-widget-demo/)** Now you can create sliders with beautiful animations and effects using our Elementor Slider widget. And just like our other widgets, there are lots of customization options for you. This free Elementor slider widget is just an awesome addition to the HappyAddon Elementor widget library. You can create outstanding slider items for free. Within our Elementor Slider widget, you can position your navigation items anywhere in the slider content area. So try this Elementor slider widget for free.
92
-
93
- * **[Carousel](https://demo.happyaddons.com/elementor-carousel-widget-demo/)** – Create interesting images and text carousels using our Elementor carousel widget which comes with a lot of options. Most of the Elementor Addons have the post carousel or WooCommerce product carousel but our elementor carousel widget will help you to create a text carousel or simple image carousel without any hassle in your elementor site. Isn’t it a cool carousel elementor widget? So try this Elementor carousel widget now for free.
94
-
95
- * **[Image Grid](https://demo.happyaddons.com/elementor-image-grid-widget-demo/)** – Simply beautiful, this Elementor widget can help you create stunning number blocks with various styles, look-n-feels that are literally going to blow your mind. HappyAddons Image Grid Elementor widget will help you to show grid images on your Elementor website. This is a simple Elementor Image grid widget. You can use this for creating a simple image grid without leaving your Elementor Editing Panel. Other image grid plugins like modular, Envira image gallery, nextgen image gallery will not allow you to create gallery images within your editing panel. You have to create an image gallery in your wordpress backend of the gallery plugins. But our Elementor Image grid gallery widget will not do this. You have full flexibility to create and customize the gallery images from the editing panel of Elementor. And that’s why it’s the best grid image gallery elementor widget among the third-party elementor addons. Try the happy addons image grid gallery widget for Elementor.
96
-
97
- * **[Step Flow](https://demo.happyaddons.com/elementor-step-flow-widget-demo/)** – HappyAddons Elementor Step flow widget will help you to create an excellent step-by-step visual diagram and instructions using this smart widget. This elementor step flow widget will allow you to change directions, counters and make them look amazing with icons, texts, and colors. Elementor Step flow widget is the best elementor widget to show content on the step flow way. You can add images and text to the step flow widget for the elementor. Also, you can change the typography of the Elementor Step flow widget.
98
-
99
- * **[Fun Factor](https://demo.happyaddons.com/elementor-fun-factor-widget-demo/)** – The fun factor elementor widget is a counter widget for Elementor. You can set a counter number on your site. This type of fun factor or counter Elementor Widget will help you to create FOMO for the visitors. Also, it helps to show data of how many clients you have served or if you have a downloadable product and you want to showcase the number of the downloads in the frontend so this fun factor elementor widget or Elementor Counter widget will help you to achieve that. So try this Elementor fun factor widget to show numbers in an animated way on your website. Also, you can add suffix and prefix to your numbers of this Elementor Fun Factor widget.
100
-
101
- * **[Calendly](https://demo.happyaddons.com/elementor-calendly-widget-demo/)** – Schedule meetings without the back-and-forth emails through Calendly. We are happy to integrate this important application into our HappyAddons. As you know calendly is one of the best booking and appointment tools in the market. But the embedding system of the calendly is really tough. But if you use our Elementor Calendly widget you will be able to embed and customize your Calendly meetings in a lucrative way. It’s now become so easy to embed any Calendly Calendars within any elementor website with the help of the HappyAddons Calendly widget for Elementor. It’s a missing piece among all of the Elementor addons. So try the Elementor calendly widget of HappyAddons to create a lucrative booking and appointment calendar for your website.
102
-
103
- * **[News Ticker](https://demo.happyaddons.com/elementor-news-ticker-widget-demo/)** – Want to show updates, popular content, or messages on your website? With the Happy Elementor Addons Content Ticker elementor widget, you can do this at your disposal with great customizability. Usually, the news ticker elementor widgets are used by the news or magazine types of websites. But now the trends have changed. Newstickers can be used for various purposes. The main purpose of a newsticker is to show information consistently. In elementor is tough to manage without any external newsticker plugin. But HappyAddons is here to solve the issue. Now you can create news tickers within your Elementor Editing panel. You don’t have to leave the editing panel anymore while creating a newsticker section for your website. Elementor Newsticker widget by happy addons is here for you. Try this elementor news ticker widget to create amazing newsticker items for your elementor website. This is also a missing piece among all of the elementor addons.
104
-
105
- * **[Social Icon](https://demo.happyaddons.com/elementor-social-icon-widget-demo/)** – Beautifully insert and display your social links onto your webpage using this widget to easily connect with your site visitor by using HappyAddons social icon widget for Elementor. Social icons are essential for a website. You can now add your company or personal social links to your website by using the happy addons elementor social icon widget. This elementor social icon widget will help you to create social credibility. Try happy addons social icon widget for elementor.
106
-
107
- * **[Twitter Feed](https://demo.happyaddons.com/elementor-twitter-feed-widget-demo/)** – Showcase your awesome team decorating in the Twitter feed mode applying various styles, texts, images, and social links. Adding Twitter feeds isn’t such an easy task. But you can achieve it by using the HappyAddons Elementor Twitter feed widget. Just add your Twitter API in this Twitter feed elementor widget you will get plenty of options to make it lucrative. We have created a few demo designs by using our Elementor Twitter feed widget so that you can get an idea of which type of things you can create with this Twitter feed widget for elementor. It’s one of the best Twitter feed elementor widgets among all of the third-party elementor addons.
108
-
109
- * **[Bar Chart](https://demo.happyaddons.com/elementor-bar-chart-widget-demo/)** – Display bar charts in an animated and customizable bar form essentially in case of imaging different data and other relevant statistical visualizations with using Happy Elementor Addons bar chart elementor widget. This bar chart widget for elementor can help you to show various data. If you are running static sites then this type of data chart elementor widget items might help you to showcase your data in an advanced way. Try HappyAddons bar chart widget for elementor. We have prepared so many demos on the Elementor Bar Chart widget. You can have a look at them.
110
-
111
- * **[360° Rotation](https://demo.happyaddons.com/elementor-360-rotation-widget-demo/)** – Create 360 Degree rotated images for your Products with this elementor 360-degree widget. Flexibility to add auto-rotate or click to the rotation functionality. Also, you can add Magnify Button to Zoom-in your pictures. It’s usually used by the woo-commerce website owners to show the all side view of their products. This 360° Rotated elementor widget will help you to create amazing rotated or animated 360° images. This Elementor 360° Rotation widget will help your users to understand the product perfectly from different angles and help you a bit to get more sales. So try the HappyAddons elementor 360° Rotate widget to create an amazing 360° Rotated image item for your products.
112
-
113
- * **[Data Table](https://demo.happyaddons.com/elementor-datatable-widget-demo/)** – Using a data table on the website is a difficult task if you don’t have any coding ideas or knowledge. However, the elementor data table widget of Happy Elementor Addons will solve this problem. Usually, most of the data table plugins are not allowing you to create tables within the frontend editing panel. The data table plugins navigate you to create tables within their settings panel and give you a shortcode to set it on your desired sections. You can check the Tablepress, ninja tables, and more table plugins in the repository. Most of them don’t have direct integration with the Elementor Page Builder. You have to be an expert to change the default look of the third-party data table plugins. Without the knowledge of HTML & CSS, you cannot do anything. But HappyAddons Elementor data table widget will help you to create a data table within your elementor Editing panel. Also, you don’t need to know CSS or HTML to design our Elementor Data table widget. Moreover, if you use the HappyAddons Elementor data table widget you can add images and icons to your table without any hassle. Check the various demos of the data table widget for Elementor of happyAddons to get a vivid idea of how an awesome elementor data table can be made with this Elementor data table widget.
114
-
115
- * **[Pricing Table Lite](https://demo.happyaddons.com/elementor-pricing-table-widget-demo/)** – Create beautiful pricing tables with lots of customizations and sleek look-n-feel using the Elementor Pricing table lite widget. Usually, we used to use table plugins to create such kinds of pricing tables in the past. But after having Elementor page builder in our WordPress Ecosystems we get a huge opportunity to create stunning pricing tables to manage our products’ pricing pages. But with the Elementor if you want to create a pricing table you have to use so many elementor columns and inner sections. If you use the HappyAddons Pricing table lite widget you will be able to create a stunning pricing table menu without creating so many dom requests. As our pricing table, the lite elementor widget is a single elementor widget. It’s a rare piece of elementor pricing table widget that is missing in other third-party elementor addons widgets lists. We have created several demo designs for our elementor pricing table widget. Check them all from the demo page of the Elementor pricing table widget.
116
-
117
- * **[Flip Box Lite](https://demo.happyaddons.com/elementor-flip-box-widget-demo/)** – FlipBox helps you to deliver messages in a beautiful way with before and after effects. Elementor Flip box widget by HappyAddons will help you to create amazing flip box content for your elementor website. There are several states to flip the content within our elementor Flipbox widget. Check all the demos of the HappyAddons flip box elementor widget.
118
-
119
- * **[Post Tab](https://demo.happyaddons.com/elementor-post-tab-widget-demo/)** – Enable users to present your post in multiple workable tabs ideally useful for grouped and related content if you use the Elementor Post tab widget of Happy Addons for Elementor. This post tab elementor widget is now available in the free version of HappyAddons for Elementor page builder. Post widgets are usually helpful for showing blog posts within your elementor website. You will get full freedom to design your elementor post tab contents. Check the demo content of the Elementor Post Tab widget.
120
-
121
- * **[Post List](https://demo.happyaddons.com/elementor-post-list-widget-demo/)** – List any post elegantly using this elementor widget displaying them in a creative and innovative manner with multiple options to play with. HappyAddons Elementor Post List widget is for displaying your post content in a list view. Usually, this type of post widgets is in the premium version of other third-party Elementor Addons. But you are getting this elementor post list widget for free in the HappyAddons Elementor widget library. So try the free elementor post list widget to display your post content in a list view.
122
-
123
- * **[Taxonomy List](https://demo.happyaddons.com/elementor-taxonomy-widget-demo/)** – This Elementor Taxonomy widget will help you to create a list of posts by sorting categories, tags, post formats. You will get plenty of customization facilities within the elementor taxonomy list widget. It will help your visitors to sort the content in different taxonomy wise. So try our elementor taxonomy list widget for free to help your visitors.
124
-
125
- * **[Horizontal TimeLine](https://demo.happyaddons.com/elementor-horizontal-timeline-widget-demo/)** – Design your storyline horizontally using the Elementor Horizontal Timeline Widget by Happy Elementor Addons. It’s absolutely free! Unlike the vertical timeline elementor widget, you will get the opportunity to show your content horizontally with the help of the HappyAddons Elementor Horizontal Timeline widget. You can add images and text within this Elementor Horizontal timeline widget.
126
-
127
- * **[Social Share](https://demo.happyaddons.com/elementor-social-share-widget-demo/)** – No need to buy a social share plugin anymore. Get many of the premium features of social share plugins within the HappyAddons Elementor Social Share widget for free! You can set your social share widget anywhere on your elementor website. You need to just drag the happy elementor addons social share widget for elementor. You have the full freedom to manage this elementor social share widget. You can set color, customization, and typography to the social share elementor widget. This social share widget for elementor will grab the associate link where you have set the elementor social share widget. Try HappyAddons social share widget for elementor and don’t forget to check the demo of the elementor social share widget.
128
-
129
- * **[Event Calendar](https://demo.happyaddons.com/elementor-event-calendar-widget-demo/)** – Are you struggling to incorporate an event calendar on your website with the help of Elementor? Don’t worry; HappyAddons for elementor has added an amazing Event Calendar Widget in the Free Version for you! You can create your own personalized calendar manually or use your Google calendar or the Events Calendar Plugin’s calendar to showcase your events. Team happyaddons for Elementor bring this elementor event calendar widget for you to solve your daily problem. You have the full freedom to design your event calendars within your elementor website. Also if you are managing your event calendar with your personal google calendar and want to embed it within your Elementor site then you should try the Happy Elementor addons event calendar widget to embed your google event calendar. Or if you have plans to create your own custom event calendar then this widget will help you to do that. HappyAddons elementor event calendar widget covers that custom event calendar creation feature too. Before testing this elementor event calendar widget check the demo created by team happy elementor addons. And this is a great addition to the elementor widget library of HappyAddons for elementor and which is missing in most of the third-party Elementor Addons Elementor widget libraries.
130
-
131
- * **[Image Hover Effect](https://demo.happyaddons.com/elementor-image-hover-effect-widget-demo/)** – If you want to add lucrative hover effects to your website’s images, you can try HappyAddons elementor Image Hover Effect Widget. This elementor image hovers effect widget allows you to add 20+ stunning hover effects to your photos. Start adding attention-grabbing images easily by using the image hover effect for elementor of Happy Elementor Addons. You have full freedom to customize the Elementor Image Hover Effect widget of Happy Elementor Addons. If you want to add visitor attention then the image hovers effect widget will be essential to your elementor widget library. Before testing the elementor image hover effect you can check the demo of the Image hover effect widget for the Elementor page builder.
132
-
133
- * **[Animated Link](https://demo.happyaddons.com/elementor-animated-link-widget-demo/)** Are you wondering about increasing the click-through rate of your website’s links? Grab your visitor’s attention by adding different effects to your links using the Happy elementor addons Animated Link widget for Elementor. This Elementor Animated link widget has plenty of hover effects for your elementor website’s links. Just choose the best suitable one from the elementor editing panel of the Animated link elementor widget. You can check Happy Elementor Addons demos for the elementor animated link widget before testing this elementor widget.
134
-
135
- * **[Mailchimp Widget](https://demo.happyaddons.com/elementor-mailchimp-widget-demo/)** – Now you can create lucrative Mailchimp forms with HappyAddons Mailchimp Widget for Elementor. Usually, you don’t have the opportunity to add Mailchimp form directly to your elementor landing pages. But now the Happy Elementor Addons Mailchimp widget will help you to create an amazing MailChimp form within your elementor landing pages. And you can set tags for your MailChimp subscribers which are missing in other third-party elementor addons Mailchimp Elementor widget. Also, you can select the list from the elementor editing panel of the MailChimp widget for elementor. No bar in elementor Mailchimp form widget customization. You don’t need elementor pro to use happy elementor addons Mailchimp widget for elementor. With the Elementor Free version and the free version of the Happy Elementor addons, you can easily create a newsletter subscribe form or newsletter subscribe bar for your elementor site. No hassle in the API integration of the happy addons for the elementor Mailchimp widget. Team Happy Elementor Addons add a dedicated page for integrating the API credential. Just paste your MailChimp form API key to the Happy Elementor Addons Mailchimp Widget’s API input field of the backend page of the HappyAddons Credential Page. And all set to use the Mailchimp form elementor widget. Plenty of customization is available in the Mailchimp form for Elementor Page Builder. Before testing the Elementor Mailchimp form widget please check the demos created by the Team Happy Elementor Addons.
136
-
137
- * **[Content Switcher](https://demo.happyaddons.com/elementor-content-switcher-demo/)** Happy Content Switcher Elementor widget allows you to toggle Elementor sections, pages, or texts easily. This is a masterpiece created by the team Happy elementor addons. Elementor content switcher widget will help you to show any kind of toggle content within your elementor website. You can even add any elementor widgets, elementor templates in the content switcher widget. It’s basically used to toggle two different types of content. Like if you have two types of pricing menu like annual pricing menu and the lifetime pricing menu then you can use the Happy elementor addons content switcher elementor widget to show the two different pricing tables within the same section of your elementor website. As you have full freedom to add any kind of elementor template within the elementor content switcher widget then there is no limitation of customization. And this elementor content switcher widget is the unique addition to the Happy Elementor Addons free pack which is missing in the other third-party elementor addons free elementor widget pack.
138
-
139
- * **[Image Stack Group](https://demo.happyaddons.com/elementor-image-stack-group-demo/)** – Sometimes we have to show images in a stack group format to create an eye-catchy look. But it’s so tough to create a single stack group of images with Elementor. But with our Elementor Image Stack Group widget, you can easily create an image stacked group within Elementor. You can get the Elementor Image Stack Group widget in the free version of Happy Elementor Addons. Check the demo of the elementor image stack group widget created by the happy elementor addons.
140
-
141
- * **[Creative Button](https://demo.happyaddons.com/elementor-creative-button-demo/)** Are you wondering about creating an outstanding, eye-catching look by adding exclusive button styles & effects to your website? Create a marvelous Call To Action through HappyAddons Creative Buttons Elementor Widget and redirect visitors to the right place. There is now a limitation to creating amazing buttons for your Elementor website. Also, the team happy elementor addons added the magnetic effect to the elementor creative button. So that you can grab your elementor website’s visitor’s attention to click the elementor creative button. And don’t forget to check the demo of the elementor creative button widget, created by the team happy elementor addons.
142
-
143
- * **[Image Accordion](https://demo.happyaddons.com/elementor-image-accordion-demo/)** – HappyAddons Image Accordion widget for Elementor comes with interactive design looks. You can create unique accordions for images. It will help you keep your users longer on the website. Sometimes you will need to show some amazing interactive image accordions to your elementor website to create a wow effect for the visitors, then the Happy Elementor addons image accordion elementor widget will be the life savior for you. As you can add an amazing effect to the images by using the happy elementor addons image accordion elementor widget. Don’t forget to check the demos of the Elementor Image Accordion, created by the team Happy Elementor Addons. And after that try Happy Elementor Addons Image Accordion Elementor Widget.
144
-
145
- * **[PDF View Elementor Widget](https://demo.happyaddons.com/elementor-pdf-view-widget-demo/)** - If you are looking for a PDF embedder or PDF Viewer WordPress plugin for your website to embed your PDF files, you are in the right place. Happy Elementor Addons comes with the ultimate PDF embedder solution for you. We have added Elementor PDF View Widget, a new Elementor widget in the Happy Elementor Free Version 3.3.1. We are the pioneer in the Elementor Addons community who have added a PDF view Elementor widget in the Elementor Widget Library. Using the Happy Elementor Addons PDF View widget for Elementor, you can embed or view PDF files from external links or upload them directly to your website as PDF Media File. Also, in this Elementor PDF View widget, you will get plenty of customization options. Now you can show Resume PDF, Invoice PDF, Ebook PDF version, Magazine PDF version, and more with the help of the PDF View Elementor Widget by Happy Elementor Addons.
146
-
147
- * **[Contact Form 7](https://demo.happyaddons.com/elementor-contact-form-7-widget-demo/)** – This utility widget helps you to integrate existing forms built using the CF7 plugin across your web pages without spending too much time. It’s tough to manage the default contact form 7 without using any CSS. But Team Happy elementor Addons added all kinds of designing facilities to the contact form 7. Happy Addons for elementor added a free elementor contact form 7 widget to the elementor widget library. You can easily embed your contact form 7 at any place on your Elementor website. Also, you have the facility to customize the contact form 7 elementor widget. You don’t need the knowledge of CSS to customize your contact form 7 forms if you use the Happy Elementor Addons contact form 7 widget. And it comes in the free version of the HappyAddons for elementor.
148
-
149
- * **[Caldera Forms](https://demo.happyaddons.com/elementor-caldera-forms-widget-demo/)** – This widget can help you to display your caldera forms to display on your web pages designed with Elementor. By default, the design customization of the caldera form is quite tough. You have to be an expert in CSS. But team Happy Elementor Addons solve the problem. Now you can customize your caldera form by using the Happy Addons caldera form elementor widget. It’s free to use. Before using elementor caldera form widget you can check the demos created by team Happy Elementor Addons.
150
-
151
- * **[weForms](https://demo.happyaddons.com/elementor-we-forms-widget-demo/)** – Designed forms using the weForms plugin and looking for a way to display those on your Elementor powered pages? This is the answer to that. You can now use the Happy elementor addons weForms widget for elementor to customize your weForms forms without leaving your elementor website. Check the demos of the Elementor weForms widget created by the team Happy Elementor Addons.
152
-
153
- * **[Ninja Forms](https://demo.happyaddons.com/elementor-ninja-form-widget-demo/)** – Use this widget to embed forms created using Ninja Forms to display seamlessly on your web pages. Various styling options will help you to look at them even better. Ninja Forms is one of the popular form builder plugins. But you have to pay extra for having the customization feature in the default version of Ninja forms. But the team Happy Elementor Addons comes with an easy solution for Ninja Forms users. You will get a Ninja form elementor widget for free in the Happy Addons for elementor. We have added every possible customization facility to the Elementor Ninja Forms widget. You can check the demo from the happy elementor addons demo page.
154
-
155
- * **[WPForms](https://demo.happyaddons.com/elementor-wpform-widget-demo/)** – Use this widget to embed forms created using WPForms to display seamlessly on your web pages. Various styling options will help you to look at them even better. WP Forms has now become the most popular form builder in the WordPress Community. The WPforms became popular due to its vast feature and customization facility. But the design customization is also a limitation for the WP Forms users. But the team happy elementor addons bring a free solution for the WP forms users. You will get a free WP forms elementor widget in the free version of the Happy Addons for elementor. This Elementor WPforms widget will help you to design your forms to the next level. Don’t forget to check the demos of the WPforms elementor widget created by the team Happy Elementor Addons.
156
-
157
- * **[Gravity Forms](https://demo.happyaddons.com/elementor-gravity-form-widget-demo/)** – While using Gravity forms, you may want to change the appearance of the form fields. With the Happy Addons, you can spruce up your Gravity forms like a pro. But it’s already a premium plugin. But the design customization is also challenging. That’s why the happy elementor addons bring a free solution to help the Gravity forms user base. You can use the Gravity forms elementor widget created by team Happy Elementor Addons. This elementor gravity form widget will help you to reshape your default form widget without any hassle. You can check the demos for Gravity Forms Elementor Widget created by the team Happy Elementor Addons. You will get an idea of what you will get in the free version of the HappyAddons Gravity forms elementor widget.
158
-
159
- * **[WP Fluent Forms](https://demo.happyaddons.com/elementor-fluent-form-widget-demo/)** – Easily customize and use Fluent Forms using this super intuitive widget. The WP Fluent Forms are now becoming very popular in the WordPress community. But the customization of the fluent forms is also difficult. You have to be an expert in CSS as well. But Team Happy Elementor Addons also brings light to this issue. You can customize your WP fluent forms with the free elementor widget of the WP Fluent Forms. No need to be an expert to customize the Elementor Fluent Form widget of Happy elementor addons. We have also made demos for the Fluent Forms Elementor widget. Check the demos of the WP Fluent Forms Elementor widget.
160
-
161
- * **[Comparison Table](https://demo.happyaddons.com/elementor-comparison-table-widget-demo/)** - The comparison table will help your site visitors to buy your product, sign up for membership, contact, or just request a quote. Are you wondering about creating comparison tables for your affiliated products, gadgets, features, services, or anything related to your website? Try HappyAddons new comparison table widget for Elementor. It’s available in the free version of HappyAddons for Elementor.
162
-
163
- * **[Photo Stack](https://demo.happyaddons.com/elementor-photo-stack-widget-demo/)** - Happy Elementor Adsdons Photo Stack Elementor Widget will help you achieve a critical layout of Images where you don’t have to use multiple columns and intersections to achieve that. With the help of the Photo Stack Elementor widget, you can easily achieve the layered image style without any technical knowledge. Showcase multiple layered images within the Elementor website by using the photo stack widget for Elementor by team HappyAddons.
164
-
165
- * **[Lord Icon](https://demo-x.happyaddons.com/elementor-lordicon-widget-demo/)** - Lord icon is a very much popular element in the web development industry. We often use this feature to add an animated icon to our websites. But previously, it was not that much easy to add and customize the lord icons to the elementor website. But from now on, you can add the lord icon to your Elementor websites by using the HappyAddons lord Icon widget for ELementor. You can customize the color and other options directly from your elementor editing panel. Lord Icon Elementor WIdget can be used separately in any place on the website; also, we have added support to the lord icons in our Info Box Elementor Widget and Icon Box Elementor Widget. Use the Lord Icon Elementor Widget.
166
-
167
- **20+ Free Elementor Enhancement Features Are Available in the Happy Elementor Addons Free**
168
-
169
- HappyAddons not only comes with extendable elementor widgets but also it has some cool features which help you to increase your web designing skill. You will get 20+ exclusive Elementor features in HappyAddons Free.
170
-
171
- **[Happy Templates](https://happyaddons.com/template-importer/)** – Finally, we are happy to announce that we are introducing the Happy Elementor Template import feature within our Happy Elementor Addons. Initially, it comes with almost 500 ready-made elementor templates. We will continuously improve our template library. Both of our Free and Pro users can use happy templates. Templates are labeled in two tags, Pro and Free. To import premium templates you will need the [HappyAddons Pro](https://happyaddons.com/pricing). The template import feature works like Elementor Template importing feature. Additionally, you can check the previews in three device viewport; Desktop, Tab, Mobile.
172
-
173
- The team Happy Elementor Addons comes with Full Page Elementor Templates. You will now get plenty of Elementor Full page templates. Elementor Page templates are easy to use. Just import it and use it within your Elementor Website and do some little bit customizations. You will get Elementor business website page templates, Elementor contact page templates, Elementor Fitness Page Templates, Elementor Black Friday Deal Page templates, Elementor Cyber Monday Page Templates, Elementor Halloween Page Templates, and more misc full elementor page templates. We are planning to bring an Elementor Template kit pack in the future. Stay connected with Happy Elementor Addons.
174
-
175
- **[Happy Shape Dividers](https://happyaddons.com/happy-shape-divider/)** – If you want to get some unique shape dividers within your elementor shape divider you can use our HappyAddons Shape Dividers for Elementor. Initially, you will get 18+ new shape dividers. Team Happy Elementor Addons brings this new feature among all of the Elementor Addon plugins. We are the pioneer in adding different elementor shape dividers to the default elementor shape dividers library to give the elementor users some extra shape dividers for elementor. Reshape your Elementor Pages with the new happy Elementor shape dividers. It’s an extra addon to elementor shape dividers. Don’t miss the chance to reshape the shape dividers of your elementor pages.
176
-
177
- **[Happy Tooltip](https://happyaddons.com/happy-tooltip/)** – You can add tooltips to any elements of your Elementor website with the HappyAddons Elementor advanced tooltip feature. Add images, GIFs, Background images to your Elementor tooltips with the help of the Happy Elementor Advance Tooltip feature. This tooltip elementor module by Happy elementor addons broadens a new way to create amazing tooltips within your elementor website. You don’t need any extra third-party tooltip plugin from the WordPress repository to add Tooltips to the elementor elements of your elementor website. You don’t have to bother with the tooltip shortcuts to add happy elementor tooltips to your elementor website. You can add Elementor tooltips from the editing panel of your elementor website. You don’t have to bother with any kind of back and forth challenges like other third-party tooltips plugins. Just select the elementor widget or elementor section where you want to add your tooltip contents and do it from your elementor editing panel. Team HappyAddons for Elementor added two types of behavior on tooltips of HappyAddons. You can show elementor tool tips on click or on hover. Also, you will get plenty of tooltip animations in the Happy elementor addons tooltip feature. And all the awesome tooltip features come with the free version of Happy Elementor Addons. Don’t miss out on the chance to use the best elementor tooltip feature. it will work with any third-party elementor addons like Elements Kit, plus addons, essential addons, premium addons, and more elementor third-party addons Elementor widgets.
178
-
179
- **[Elementor Equal Heights](https://happyaddons.com/equal-height-feature/)** – By default you cannot set the equal column heights to your elementor columns. But from now you can set equal heights to your Elementor Columns, widgets without using zero coding knowledge by using the Elementor Equal Heights feature of Happy Elementor Addons. Usually, Elementor Equal Heights requires when you have different lengths of contents on the elementor columns. And there is no easy way to fix this. You have to add more space or do some CSS stuff. But with the HappyAddons Elementor Equal Heights feature, you can fix the issue within the twinkle of your eyes. So try the Happy elementor addons Elementor Equal Heights for free.
180
-
181
- **[Text Outline](https://happyaddons.com/text-outline/)** – With this Elementor Text Outline feature you can add an exterior border around each character of your text or Heading lines. You can create Neon Text Effect, Parallax Heading Effect, Stroke Heading Effect and much more. You can also apply this feature in the Elementor’s Default Heading Widgets. Here is the list of widgets within which you will get this text outline option,
182
-
183
- Elementor Heading Widget
184
-
185
- – Elementor Page Title Widget
186
-
187
- – Elementor Site Title Widget
188
-
189
- – Elementor Post Title Widget
190
-
191
- – Elementor Product Title Widget
192
-
193
- Elementor Animated Heading Widget
194
-
195
- HappyAddons Gradient Heading Widget
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
196
 
197
  Here are some design inspirations for you. **[Demo](https://demo.happyaddons.com/text-outline/)**
198
 
199
- If you are looking for the awesome handy tool (Elementor Text Outline)to make a difference in your elementor website then don’t miss out on the chance to try it free as this Elementor Text Outline feature comes with the free version of the Happy Elementor Addons. And the Elementor Text outline feature is a very lightweight Elementor feature to create amazing design aspects within your elementor website.
200
-
201
- **[Background Overlay](https://happyaddons.com/background-overlay-demo/)** – The Elementor Background overlay extension will allow you to add images, colors, and icons behind an Elementor widget. You can add background overlay to any Elementor widget. Actually, you can add background overlay to the Elementor Sections and Columns but it’s quite tough to add Background overlay to the elementor widgets. But now with the help of the Happy elementor addons elementor background overlay extension, you can add a different look to your elementor widgets. Interestingly, it will work with any third-party elementor addons like Elements Kit, plus addons, essential addons, premium addons, and more elementor third party addons Elementor widgets.
202
-
203
- **[Happy Icons](https://happyaddons.com/happy-icon/)** – This will help you embellish your web page with an army of free happy elementor line icons. To do so, you have to choose a widget that supports happy elementor line icons. Currently, the custom fonts library contains 500+ icons. Usually, you will get font awesome icon library with your elementor icon pack. But the line icons are now trendy. You can add line icons to every possible icon-supported elementor widget. HappyAddons elementor line icons come with the free version of Happy Elementor addons. So that you can use these Happy line icons to HappyAddons free and Happy elementor addons pro. It will reduce your pain to upload SVG icons each and every time. Don’t miss out on the chance to make your elementor site a different one from the regular font awesome using Elementor Website.
204
-
205
- **[Managing Column Order on Mobile Responsive Mood ](https://happyaddons.com/happy-column-control/)** – Your designed elementor web page may contain some columns that may require reorder in the mobile device view. By using the Happy Elementor Addons, you can rearrange the order of the column. It’s very easy to use. You don’t need any extra knowledge to order your columns on mobile and tablet devices. Actually, you have to just set the number chronologically to the column ordering feature of the HappyAddons. It will help you to get the desired column order in the small screen of the elementor sites.
206
-
207
- **[Manage Column Width by Adding Pixels](https://happyaddons.com/happy-column-control/)** – You can control the column width of your widgets with percentage parameters in Elementor. However, sometimes, you need to adjust the column width to meet your design aesthetics. The Happy Elementor Addons will let you do so with ease.
208
 
209
- **[Happy Clone](https://happyaddons.com/happy-clone-demo/)** – While designing with Elementor, you may need to duplicate pages or posts from the finder of Elementor Page Builder by using the buttons (CMD/CTRL + E). Surprisingly, you can copy pages and posts lightning-fast from the Elementor finder using the Happy clone feature. Also, HappyAddons elementor Happy Clone or duplicator feature will help you to duplicate your posts and pages. You don’t need any third-party duplicator plugin to duplicate or clone your page and posts. And interestingly, this handy Happy Elementor Duplicator or clone feature comes with the free version of the happy elementor addons. So try the Happy elementor clone or duplicator extension to duplicate your posts and pages.
210
-
211
- **[Fixed Size Controls in Elementor Button Widget](https://happyaddons.com/docs/happy-addons-for-elementor/happy-features/fixed-size-controls-in-elementor-button-widget/)** Sometimes, you may need to make perfectly circular-shaped buttons in Elementor. With this free feature, you can do that by just setting a fixed size, that is, by specifying an equal height and width of the Elementor Button widget.
212
-
213
- **[Grid Layer](https://happyaddons.com/happy-grid-layout-demo/)** – Maintain proper alignment of your page’s elements. Enjoy full flexibility while setting your grid color, width, and position of your grid layout. Btw it’s not the grid system. It’s actually a design system to create perfectly aligned designs for your elementor website. If you are familiar with other designing tools like Figma, Adobe XD, Adobe illustrator, or sketch you will get the same kind of design grid layer system within your elementor editing panel of your elementor website.
214
-
215
- **[Wrapper Link](https://happyaddons.com/wrapper-link-feature-demo/)** – No limitation on adding links to specific areas of your elementor column, sections if you use Wrapper Link of HappyAddons for elementor. Use the Wrapper Link feature to insert links to any column, section or any other place you want. So dont miss out on the chance to use the Happy Elementor Addons Elementor Wrapper link module or elementor extension to add a custom wrapper link to any elementor column or elementor section of your elementor website. So wrapper links for elementor will be helpful to increase the click rate of any content of your elementor website. There is no limitation to add wrapper link to any elementor widgets, third party elementor addons widgets too.
216
-
217
- **[Floating Effects](https://happyaddons.com/elementor-floating-effect-demo-2/)** – Now you can create stunning animations for any Elementor widget using Floating Effects. Translate, Rotate, or Scale Imagination is the limit! HappyAddons floating effect will help you to Translate, Rotate or Scale any elements and elementor widgets without using CSS directly. Don’t miss the chance to make eye-catchy design elements to your WordPress elementor website.
218
 
219
  [youtube https://www.youtube.com/watch?v=LmtacsLcFPU&ab_channel=HappyAddons]
220
-
221
- ### Floating Effects used for Space effect illustration:
222
-
223
- With the help of the Happy elementor addons floating effect extension, you can create this kind of amazing Space effect.
224
 
225
  [youtube https://www.youtube.com/watch?v=F33g3zqkeog&ab_channel=HappyAddons]
226
 
227
- **[CSS Transform](https://happyaddons.com/elementor-css-transform-demo-3/)** – Another missing piece, a great enhancement over core Elementor that works seamlessly with every widget. You can now apply various CSS transforms like translate, rotate, scale and skew without any limitations within any Elementor Widget also with any other third-party elementor addons. It’s a global feature of elementor created by Happy Addons for elementor. Don’t miss the chance to use the Happy Elementor addons CSS transform elementor module to create an extraordinary look for your elementor website.
 
228
 
229
- **[Scroll To Top Feature:](https://happyaddons.com/docs/happy-addons-for-elementor/happy-features/scroll-to-top-button/)** - Scroll to top feature is a commonly used feature in websites. We often use scroll-to-top plugins or use different methods to add that option to the web pages. But don’t worry, you can add this option to your websites within Elementor Editing Panel by using Happy Addons Scroll to the top feature. You can set the scroll to the top button for all pages or can set a condition for any specific page not to show the scroll to top button. Use happy addons for elementor’s scroll-to-top feature for free.
230
 
231
-
232
- ### **PRESENTING THE ALL-EXCLUSIVE ElEMENTOR WIDGETS & FEATURES HAPPY ELEMENTOR ADDONS PRO**
233
-
234
- The Happy Elementor Addons ships not only with some unique premium features but also with premium widgets. The premium features are 100% unique and exclusive and the premium widgets are there to give you professional assistance to craft any design of your webpage.
235
 
236
  [youtube https://www.youtube.com/watch?v=QwJrFMtfO2U&ab_channel=HappyAddons]
237
 
238
- _Introducing Happy Addons Pro (Check What You Will Get in the Pro Version of Happyaddons)_
239
-
240
-
241
- ### 50 PREMIUM ELEMENTOR WIDGETS OF HAPPY ADDONS FOR ELEMENTOR (PRO)
242
-
243
- If you are still craving more Elementor widgets, then the following premium elementor widgets are there to quench your thirst. The best part is that you can copy and paste the design source code so you won’t have to make any design from scratch. Let’s explore the world of Happy Elementor Addons Pro Widgets:
244
-
245
-
246
-
247
- * **[Advanced Slider](https://demo.happyaddons.com/elementor-advanced-slider-widget-demo/)** – Bored with your typical elementor sliders? Try our advanced slider for Elementor. Create mesmerizing slides within your Elementor Sites using our Advanced Slider. As you can add premade sections to your slides of the Happy elementor addons elementor advanced slider. So you have the full freedom to design any kind of design within the Happy Elementor Addons elementor advanced slider widget. It comes with the premium version of HappyAddons for Elementor.
248
-
249
- * **[Happy Mega Menu](https://demo.happyaddons.com/elementor-happy-mega-menu-widget-demo/)** – Struggling with large-scale menu items? Happy Mega Menu is the best solution to your problems. You can create mega menus like Adidas, Dribbble, Puma, Invision, etc. Megamenus is a game-changing item for websites. As you can create eye catchy menu items with the megamenu of Happy Elementor Addons. The Elementor Megamenu widget will help you to achieve any type of elementor megamenus which is quite impossible with the default elementor menu items. Also, you can use our Happy elementor menu widget to design a simple elementor nav menu for your elementor website. So don’t miss the chance to have a powerful elementor mega menu in your elementor widget package. Before buying the happy elementor addons to get the happy elementor mega menu in your element pack we like to request you to have a look into the demo designs for the Happy mega menu widget for elementor.
250
-
251
- * **[One Page Navigation Widget](https://demo.happyaddons.com/elementor-one-page-navigation-widget-demo/)** – HappyAddons for Elementor’s one page navigation elementor widget will help you create lucrative one page nav contents for your site. It has 9 design controls with a smooth scrolling option. You can show any kind of design within the one page nav elementor widget created by Happy Elementor Addons. This One Page Navigation Elementor Widget is usually used to show multiple contents within one page with a floating navigation menu. Try Happy Elementor Addons one page navigation elementor widget.
252
-
253
- * **[Unfold Widget](https://demo.happyaddons.com/elementor-unfold-widget-demo/)** – You can organize and save space on your webpage with HappyAddons Unfold Elementor Widget. This Elementor Unfold widget will help you create interactive content along with neat and clean Elementor web pages. Moreover, you can unfold the content with click or mouse hover action in your elementor website. Team Happy Elementor Addons has created amazing Elementor unfold widget demos for you. So before trying the premium elementor widget we like to request you to check the demos created by the team happyaddons for elementor.
254
-
255
- * **[Off-Canvas Content or Menu Widget](https://demo.happyaddons.com/elementor-off-canvas-content-demo/)** – Happy Elementor Addons Elementor off canvas navigation content or menu or off canvas nav menu widget will give you the freedom to create any kind of off canvas contents or offcanvas menu items for your Elementor websites. This Off canvas content or menu elementor widget is also popular as flyout elementor menu widget. You can set any kind of flyout menu items or off canvas menu widget for elementor website. Try Happy elementor addons off canvas content or off canvas menu elementor widget.
256
-
257
- * **[Feature List](https://demo.happyaddons.com/elementor-feature-list-widget-demo/)** – You can display your product features using different styles using the Elementor feature list widget. As a bonus, you can also customize each and every predefined design of the Elementor feature list widget. Check the demos of the Feature list elementor widget of Happy Elementor Addons. It’s available in the pro version of HappyAddons for Elementor.
258
-
259
- * **[Pricing Table](https://demo.happyaddons.com/elementor-pricing-table-widget-demo/)** – This one-of-a-kind elementor widget will allow you to create any kind of pricing table under the sun. As a surprise, you can use gradient background, oval-shaped button, font awesome icons, background fill color, different heights, dark mood, and so on within the Elementor Pricing Table widget of Happy Elementor Addons. This elementor pricing table widgets can be used within WooCommerce or EDD (Easy digital downloads) managed websites. You can design any kind of pricing table content within your elementor website without using any table builder plugins or any third party pricing table WordPress plugin. You can manage this elementor pricing table within the elementor editing panel. Also, you can add badges, tooltips, and more within the Happy Elementor Addons pricing table elementor widget created by HappyAddons for Elementor.
260
-
261
- * **[Flip Box](https://demo.happyaddons.com/elementor-flip-box-widget-demo-2/)** – This exquisite elementor flip box widget will help you show different messages or texts at the time before and after a user hover on a certain element. Just like the other elementor widgets, you can customize this with background image, gutter, and circular arrow navigation on both sides. Team Happy elementor addons added the 3d flip box design within the HappyAddons Elementor Flip Box widget. This Elementor flip box widget is in the Happy Elementor Addons Pro version. Also, team Happy Elementor Addon has created so many demos for the flip box elementor widget.
262
-
263
- * **[Advanced Heading](https://demo.happyaddons.com/elementor-advanced-heading-widget-demo/)** With the Elementor Advanced Heading useful elementor widget you can create beautiful heading designs for the headline text of your Elementor Website. Like the other Elementor widgets, you will get a bunch of free customization options for different sections of the texts. With this elementor heading widget, you can do massive customization in your elementor website. Also the team happy elementor addons added elementor presets to do quick go editing facility of the Advanced elementor heading widget. Also, you can check the demos of the Elementor Advance heading widget created by team Happy Elementor Addons.
264
-
265
- * **[Hover Box](https://demo.happyaddons.com/elementor-image-hover-box-widget-demo/)** – Give boring images lives by adding dynamic animated texts with this nifty little tool Elementor Hover Box Widget. You can display texts with the Hover Box elementor widget right after a user hovers an image. The Elementor Hover Box widget is quite different from regular elementor hover box items. Happy Elementor Addons bring this cool elementor hover box widget for you. Check the demo of the elementor hover box widget created by HappyAddons for elementor.
266
-
267
- * **[Team Carousel](https://demo.happyaddons.com/elementor-team-carousel-widget-demo/)** – Present your team members with beautiful carousels that include social profile buttons, arrow icons, and great customizability by using the Happy Elementor Addons team carousel elementor widget. You can do lots of design customization within the Elementor Team Carousel widget. Also, it’s the best possible way to show team members within a single section of elementor.
268
-
269
- * **[Scrolling Image](https://demo.happyaddons.com/elementor-scrolling-image-widget-demo/)** – Using the elementor scrolling image widget, you can show your products or services in a way that slides horizontally or vertically. You can also create a stunning photo gallery with this awesome scrolling elementor widget within your elementor site. Check the demos created by Happy Elementor Addons of the Elementor Scrolling image widget.
270
-
271
- * **[Advanced Tab](https://demo.happyaddons.com/elementor-advanced-tab-widget-demo/)** – This Elementor widget will enable you to show your content by creating advanced tabbed content sections using full-controlled customizations. You can also use other Elementor widgets inside the tab. As you will get the option to add a custom-made elementor section into the Happy Elementor Addons Advanced Elementor Tab widget. This Elementor Advanced Tab elementor widget is mainly for showing tabbed contents within the elementor single section. So don’t miss the chance to create elementor tabbed content with the help of the Happy Elementor Addons Elementor Advanced Tab widget.
272
-
273
- * **[Advanced Accordion](https://demo.happyaddons.com/elementor-advanced-accordion-widget-demo/)** Just like the Advanced Tab Elementor widget, if you want to provide your user with extra information using a collapsing effect in different directions, then this is the elementor widget you should go for. In the Elementor Advanced Accordion widget, you can use any premade sections of the elementor. Show advanced content within your Elementor Accordion elementor widget. You don’t need any accordion plugin to create an accordion for your WordPress website. Use the Elementor Advanced Accordion Widget to add accordion to your elementor website.
274
-
275
- * **[Testimonial Carousel](https://demo.happyaddons.com/elementor-testimonial-carousel-widget-demo/)** – The Elementor Testimonial Carousel widget will provide you with a great way to showcase the recommendations of your customers. You can also control the carousel’s movement using various flexible styles for your Elementor Website. Team Happy Elementor Addons also created amazing demos for the Elementor Testimonial Carousel widget. So try the testimonial carousel elementor widget.
276
-
277
- * **[Logo Carousel](https://demo.happyaddons.com/elementor-logo-carousel-widget-demo/)** – Unleash your design creativity with this beautiful logo carousel elementor widget and showcase your partners and products using vertical or horizontal motion created by Happy Elementor Addons. This Elementor Logo carousel widget will help you in many ways to showcase your clients’ logo or product logo within your elementor website. Check the demo elementor designs of the logo carousel elementor widget now created by the team Happy Elementor Addons. After checking the demos of the elementor logo carousel widget then but the Happy Elementor Addons premium version.
278
-
279
- * **[Animated Text](https://demo.happyaddons.com/elementor-animated-text-widget-demo/)** – This Elementor Animated text widget is pretty useful to make your text stand apart from the crowd applying smart animations within your elementor website. You can customize the cool animation effects with a variety of flexible styles of the Animated Text Elementor Widget. Try the demos of the Happy Elementor Addons’ Animated Text elementor widget. Then buy HappyAddons for elementor.
280
-
281
- * **[Timeline](https://demo.happyaddons.com/elementor-timeline-widget-demo/)** – Tell your story in the precise and the smartest way using this gorgeous tool Elemntor timeline widget. This time line widget for elementor will help you to achieve an amazing design within your elementor website. Your visitors will get to know everything about the history of your product or company through a bird’s eye view if you use the Happy Elementor Addons timeline widget for elementor. Showcase your story or company history in a precise and elegant way using a powerful and advanced Timeline Widget Addon for Elementor. Using this timeline elementor addon you can create a beautiful timeline with a few clicks.
282
-
283
- * **[Instagram Feed](https://demo.happyaddons.com/elementor-instagram-feed-widget-demo/)** – The elementor Instagram feed widget will pave the way to dynamically show you your beautiful Instagram photos seamlessly on your elementor website page. Users can interact with your photos and leave a comment. Usually, it’s tough to add the Instagram feed to any website. People used to use the smash balloon social feed plugin to add the Instagram feed to their website. The smash balloon is highly pricey for the simple task. But now with the help of the Happy Elementor addons Instagram feed widget for elementor you can easily add your elementor website. You don’t have to spend extra money on social feed plugins like smash balloon. This Instagram feed elementor addon widget created by the team happy elementor addons will help you to add the Instagram feed to your elementor website within a few clicks. Also, you can set the caching time of the feeds of your Instagram profile of the HappyAddons Instagram Elementor widget.
284
-
285
- * **[Advanced Toggle](https://demo.happyaddons.com/elementor-advanced-toggle-widget-demo/)** – Similar to the Elementor Accordion widget, this Elementor Advanced Toggle widget will allow you to create a collapsible container area that will enable the user to show and hide items provided that the user clicks on it. The team Happy Elementor addons have created amazing demos for the elementor advanced toggle widget. So check the demos from the Advanced Toggle elementor widget and buy the happy elementor addons premium plan if you like it.
286
-
287
- * **[List Group](https://demo.happyaddons.com/elementor-list-group-widget-demo/)** – With this incredibly handy elementor list group widget, you can craft beautiful lists. You can also apply advanced styles to give the appearance of the items just like the way you want it with the Elementor list group widget. We have added demo designs for the Elementor List Group widget.
288
-
289
- * **[Countdown](https://demo.happyaddons.com/elementor-countdown-widget-demo/)** – This Elementor countdown widget eye-catching widget will let you set a countdown clock which you can use to show the launch time of your website or prod the customers to take a particular action showing remaining time. This elementor count down widget is created by team Happy Elementor Addons.
290
-
291
- * **[Source Code](https://demo.happyaddons.com/elementor-source-code-widget-demo/)** – While writing docs or tutorial posts, you can use this widget to skillfully show codes to your visitors so that they can copy and paste them anywhere on the page at their disposal. Use the Source code elementor widget created by team Happy Elementor addons.
292
-
293
- * **[Promo Box](https://demo.happyaddons.com/elementor-promo-box-widget-demo/)** – Promote anything in a more lucrative way with the promo box elementor widget of Happy elementor Addons. And clearly stay ahead in the competition.
294
-
295
- * **[Hot Spot](https://demo.happyaddons.com/elementor-hot-spot-widgets-demo/)** Another power-packed elementor widget that can help you create incredible accordions in styles created by team Happy Elementor addons. It’s a powerful elementor hot spot widget rather than the default elementor hot spot widget.
296
-
297
- * **[Price Menu](https://demo.happyaddons.com/elementor-price-menu-widget-demo/)** – Display your food menu list with or without price in a decent and creative way with this full flexible widget elementor price menu widget created by team happy elementor addons.
298
-
299
- * **[Business Hour](https://demo.happyaddons.com/elementor-business-hour-widget-demo/)** – This elementor business hour widget will help you show the business hours in a tabular form. Your customers will get to know when your business is open or closed. Try Happy elementor addons business hour widget.
300
-
301
- * **[Line Chart](https://demo.happyaddons.com/elementor-line-chart-widget-demo/)** – Visualize your data in different ways; each of them animated and customizable with the elementor line chart widget which is created by Happy Elementor Addons. Check the demo of the line chart elementor widget.
302
-
303
- * **[Pie & Doughnut Chart](https://demo.happyaddons.com/elementor-pie-doughnut-chart-widget-demo/)** – Pie & donut chart elementor widget is to visualize your data in different ways; each of them animated and customizable created by team happy elementor addons.
304
-
305
- * **[Polar Area Chart](https://demo.happyaddons.com/elementor-polar-area-chart-widget-demo/)** – Polar Area chart elementor widget is to Visualize your data in different ways; each of them animated and customizable created by team happy elementor addons.
306
-
307
- * **[Radar Chart](https://demo.happyaddons.com/elementor-radar-chart-widget-demo/)** – Radar chart elementor widget is to visualize your data in different ways; each of them animated and customizable created by team happy elementor addons.
308
-
309
- * **[Facebook Feed](https://demo.happyaddons.com/elementor-facebook-feed-widget-demo/)** – Show the feed of your Facebook page on your website in a different and creative way through the elementor Facebook feed widget created by happy addons and it’s the best addon to the elementor widget library.
310
-
311
- * **[Twitter Feed Carousel](https://demo.happyaddons.com/elementor-twitter-feed-carousel-widget-demo/)** – Showcase your awesome team decorating in the Twitter feed mode applying various styles, texts, images, and social links with the help of the Twitter feed carousel elementor widget created by Happy Elementor addons.
312
-
313
- * **[Breadcrumbs](https://demo.happyaddons.com/elementor-breadcrumb-widget-demo/)** – Visualize your breadcrumbs in different ways; each of them is customizable with the help of the Bread Crumbs elementor widget created by Happy Elementor addons.
314
-
315
- * **[Sticky Video](https://demo.happyaddons.com/elementor-sticky-video-widget-demo/)** – From now, you can set sticky videos with the HappyAddons sticky video widget. Also, you will get plenty of options to manage your videos in an advanced way with the help of the sticky video elementor widget created by Happy Elementor addons.
316
-
317
- * **[Advanced Data table](https://demo.happyaddons.com/elementor-advanced-datatable-widget-demo/)** – Manage Your Table Data with Google Sheet, Table Press, Import from CSV, Local Database with the help of Advanced data table elementor widget created by Happy Elementor addons.
318
-
319
- * **[Modal Popup](https://demo.happyaddons.com/elementor-modal-popup-widget-demo/)** – Create click-triggered Popups to grab and collect various information from the visitors with the help of the Modal popup elementor widget created by Happy Elementor addons.
320
-
321
- * **[Single Image Scroll](https://demo.happyaddons.com/single-image-scroll-widget-demo/)** – Facing difficulties while presenting long images like web page screenshots, panorama shots, etc to your portfolios? From now on you can showcase long images by using the Happy elementor addons Single Image Scroll elementor widget.
322
-
323
- * **[Post Grid](https://demo.happyaddons.com/elementor-post-grid-widget-demo/)** – Scale your blog archive page with the Happy Elementor Addons Post Grid Elementor widget. It comes with predefined skins, so you spend less time designing your blog page.
324
-
325
- * **[Post Tiles](https://demo.happyaddons.com/elementor-post-tiles-widget-demo/)** – Now you can showcase your most desirable blog posts exclusively with the Post Tiles elementor widget of Happy Elementor Addons. It’s available with predefined tiles set to achieve an elegant look.
326
-
327
- * **[Smart Post List](https://demo.happyaddons.com/elementor-smart-post-list-widget-demo/)** Are you looking for a magnificent listing facility with the highlighted option for your sticky featured article? HappyAddons for elementor Smart Post list elementor widget will handle all of your desirable styles smartly, like featuring the sticky post, filterable post list, and more.
328
-
329
- * **[Post Carousel](https://demo.happyaddons.com/elementor-post-carousel-widget-demo/)** The Post carousel feature is now trendy in News Portals or other blogging sites to grab visitors’ attention. Now you can create a stunning post carousel for your site with the Happy elementor Addons for Post Carousel elementor widget.
330
-
331
- * **[Author List](https://demo.happyaddons.com/elementor-author-list-widget-demo/)** – Decently showcase your creative writers with the Happy elementor Addons Author List elementor widget. It will help you to display all of your authors in one place.
332
-
333
- * **[WooCommerce Product Grid](https://demo.happyaddons.com/elementor-product-grid-widget-demo/)** – Are you struggling with showcasing your WooCommerce products in perfect grid alignment within WooCommerce? From now, you can display your products in grid views lucratively with Happy elementor Addons Pro Product Grid elementor Widget.
334
-
335
- * **[WooCommerce Product Carousel](https://demo.happyaddons.com/elementor-product-carousel-widget-demo/)** – Wondering about a perfect WooCommerce Product Carousel widget for Elementor to grab the attention of your customers? Try Happy Elementor Addons Pro’s Product Carousel Widget to make it happen.
336
-
337
- * **[WooCommerce Product Category Grid](https://demo.happyaddons.com/elementor-product-category-grid-widget-demo/)** – Sometimes you need to display your WooCommerce - eCommerce products category-wise to target a specific genre of visitors. Our Happy elementor Addons Product Category Grid elementor Widget is the best fit for displaying WooCommerce Products category wise.
338
-
339
- * **[WooCommerce Product Category Carousel](https://demo.happyaddons.com/elementor-product-category-carousel-widget-demo/)** – From now you can display WooCommerce products in carousels based on specific categories with the help of Happy elementor Addons Pro Product Category Carousel elementor Widget to make them more lucrative.
340
-
341
- * **[WooCommerce Single Product](https://demo.happyaddons.com/elementor-single-product-demo/)** – Are you looking for a design element to design your single WooCommerce products in various designs within your elementor website? No worries, Happy elementor Addons Single WooCommerce Product elementor Widget will fulfill your desired goal. Check out the demos here.
342
-
343
- * **[WooCommerce Mini Cart](https://demo.happyaddons.com/elementor-mini-cart-widget-demo/)** – Want to increase your WooCommerce/eCommerce store’s customer experience? Use the elementor mini cart widget of Happy elementor Addons to boost your conversion rate swiftly.
344
-
345
- * **[Advanced Google Map Widget for Elementor](https://demo.happyaddons.com/elementor-google-map-widget-demo/)** – Are you looking to add a map to your elementor website but not the traditional google map? Yes, if you use the Happy Addons Elementor Google Map widget, you can achieve that quickly. You can customize your Elementor Google Map Widget based on your theme color. Also, in HappyAddons Advance Google Map Elementor Widget, you can add your custom label, map marker, legend, and more.
346
- Happy Addons for Elementor also brings the Snazzy Map styling within Advanced Google Map Elementor Widget. We have added four built-in styles and also added support for custom JSON input from the official Snazzy Map. So, you can now design your Google Map according to your theme.
347
-
348
- * **[EDD Single Product Elementor Widget](https://demo.happyaddons.com/elementor-edd-single-product-widget-demo/)** - If you want to add a single product as your featured item on your website is tough for nontechies as there is no integration for Easy Digital Downloads along with Elementor. Don’t worry; team HappyAddons comes with seamless integration of EDD for Elementor. You can easily add any product of your EDD store as your featured product at any place on your Elementor website by using the Happy Elementor Addons Easy Digital Downloads Single product elementor widget. You can add two images on the EDD single product widget to make an eye-catchy effect to grab your visitors' attention. Try Happy Addons for Elementors EDD single product Elementor widget.
349
- **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-single-product/)** & **[Video](https://www.youtube.com/watch?v=ytRb7WHq2v0&ab_channel=HappyAddons)** Tutorial for Easy Digital Downloads Single Product Elementor Widget.
350
-
351
- * **[EDD Product Grid Elementor Widget](https://demo.happyaddons.com/elementor-edd-product-grid-widget-demo/)** - Wondering to showcase multiple products of your EDD stores! Showcasing products in a grid style is the best possible way to display multiple products on an eCommerce site. Herewith the help of HappyAddons EDD product grid elementor widget, you can achieve that easily. You don’t have to do extra work to showcase your EDD store’s products in a grid style, just need to drag the Happy Elementor Addons EDD product grid elementor widget, and then you can easily customize it by using HappyAddons advanced designing ability. Try the Happy Elementor Addons Easy Digital Downloads Product Grid widget for Elementor.
352
- **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-product-grid/)** and **[Video](https://www.youtube.com/watch?v=HJxVFK9TFoA&ab_channel=HappyAddons)** tutorial for EDD Product Grid Elementor widget.
353
-
354
- * **[EDD Product Carousel Elementor Widget](https://demo.happyaddons.com/elementor-edd-product-carousel-widget-demo/)** - In the carousel style, you can amazingly show multiple products or items in a row. And by default, it is tough to create carousels for EDD products as there are no default EDD elementor widgets. But HappyAddons bring the Product Carousel widgets for Elementor Page builders. So now you can create amazing product carousels for your Easy Digital Downloads store. Try HappyAddons EDD Product Carousel Elementor to create lucrative product carousels for EDD products.
355
- Check **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-product-carousel/)** and **[Video](https://youtu.be/4P_FZiC8MXM)** Documentation for EDD product carousel Elementor Widget.
356
-
357
- * **[EDD Category Grid Elementor Widget](https://demo.happyaddons.com/elementor-edd-category-grid-widget-demo/)** - Sometimes we need to add product categories to our stores to navigate the visitors to the specific areas. By default, it’s difficult for regular users to add Easy Digital Downloads product categories as there is no default integration with Elementor Page Builder with EDD. But if you use HappyAddons for Elementor, you will get the opportunity to design your EDD stores’ all categories in a grid style. Also, you will have the full-fledged customization facility in the EDD category grid elementor widget.
358
- Here are the **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-category-grid/)** and **[Video](https://www.youtube.com/watch?v=OVJAyajsOqc&ab_channel=HappyAddons)** Documentation for the EDD category grid widget for Elementor.
359
-
360
- * **EDD Category Carousel Elementor Widget** - If you are wondering about adding EDD product carousels within Elementor, it will be impossible as there is no default support of Elementor for the Easy Digital Download plugin. But if you use Happy Addons for Elementor, you will get the opportunity to add category carousels for your EDD stores. You can create lucrative category carousels for your EDD stores using the EDD category carousel elementor widget.
361
- Check **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-category-carousel/)** and **[Video](https://www.youtube.com/watch?v=-CgXyA-g9q0&feature=youtu.be&ab_channel=HappyAddons)** Documentation for EDD Category Carousel Elementor Widget.
362
-
363
- * **[EDD Cart Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-cart/)** - If you are using Easy Digital Downloads to manage your sale now, you can design your EDD cart page using HappyAddons EDD Cart Widget for Elementor.
364
-
365
- * **[EDD Checkout Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-checkout/)** - Manage your Easy Digital Downloads Checkout pages by using HappyAddons EDD Checkout Widget. A limitless customization facility has been added to this EDD checkout elementor widget.
366
-
367
- * **[EDD login Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-login/)** - You can customize your EDD store’s login page by using HappyAddons Easy Digital Download Login Widget within Elementor website builder.
368
-
369
- * **[EDD Registration Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-register/)** - HappyAddons EDD Registration Widget allows you to customize the registration form of the Easy Digital Downloads. You can manage it from your Elementor Editing Panel.
370
-
371
- * **[EDD Purchase WIdget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-purchase/)** - EDD purchase widget of HappyAddons gives you the flexibility to stylize your Easy Digital Download store’s purchase page within Elementor.
372
-
373
- * **[EDD Download Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-download/)** - If you want to customize your EDD store’s download page with Elementor, then use HappyAddons EDD Download Widget.
374
-
375
- * **[Image Swap Widget](https://demo.happyaddons.com/elementor-image-swap-widget-demo/)** - If you are looking for an Elementor Widget which can help you to alter the lower image to the top without any hassle, then you can use HappyAddons Image Swap Widget. It will help you to create an actionable section for your users on your Elementor Website.
376
-
377
- ### **UNIQUE PRO FEATURES OF HAPPY ELEMENTOR ADDONS TO WATCH OUT FOR**
378
-
379
- The premium (PRO) features of Happy Addons truly make it stand out from all the other Elementor add-ons out there right now. You will get the below mentioned much talked about standout premium features in the PRO version of Happy Addons:
380
-
381
-
382
- ### **HAPPY MEGA MENU BUILDER FOR ELEMENTOR:**
383
-
384
- Happy Addons brings an amazing mega menu builder for Elementor. With this MegaMenu builder, you can create mega menus like Dribble, Adidas, Puma, weDevs, and more. Our Happy Menu widget will help you show any kind of element to your mega menu items. Like you can show posts, categories, pages, list items, social links, menu icons, and more. Not only that but also you will get a blank Elementor canvas to design your mega menu items.
385
-
386
- What Extra Will You Get in the Mega Menu Builder of Happy elementor Addons?
387
-
388
- With this Happy mega menu builder elementor widget, you can create any kind of menus.
389
-
390
-
391
-
392
- * **Simple Navigation Menu For Elementor:** You can create a simple nav menu for your Elementor site. You can show and design your WordPress Nav menu items as well.
393
- * **Icon for menu items or megamenu items:** Flexibility to add different types of icons to menu items.
394
- * **Menu Badges for Mega Menu or Simple Nav Menus:** Create a customized badge for your megamenu or simple menu items.
395
- * **Mobile Responsive Mega Menus:** You can create mobile responsive menus, as it has different styling options for mobiles and tablets.
396
 
397
  Want to learn How to Create a MegaMenu for Elementor? Watch this detailed tutorial of creating mega menus within Elementor,
398
 
399
  [youtube https://www.youtube.com/watch?v=7qmCZFsDkmg&ab_channel=HappyAddons]
400
 
401
 
402
- ### **CROSS-DOMAIN COPY-PASTE: APPLY THE SAME DESIGN TO MULTIPLE DOMAINS WITH A SINGLE CLICK**
403
-
404
- If you are creating different web pages with WordPress, you will often try to use the same elements of a web page to other pages over and over again.
405
-
406
- To address this issue, the Elementor page builder comes with a free copy and paste elements feature for a single domain. But the problem is, you can not copy and paste an element to other domains.
407
-
408
- This is where the goodness of the Happy Addons comes to the rescue! With this tool, you can copy and paste any element (for example, buttons, navigation bars, carousel, accordion, etc.) from one domain to another domain. Cool, right? Don’t miss out on the chance to scale up your working efficiency with the help of Happy Elementor Addons cross domain copy paste elementor extension/ elementor module/ elementor feature. Happy elementor addons are the inventor of the cross domain copy paste feature in the elementor ecosystem.
409
 
 
 
410
  [Check Demo](https://demo.happyaddons.com/cross-domain-copy-paste/)
411
 
412
-
413
- ### **PRESET: SAVE YOUR TIME AND EFFORT BY USING THE PRESET FEATURE**
414
-
415
- If you try to create your elementor website from scratch and give it a professional appearance, then it will take up a huge amount of time and effort.
416
-
417
- To tackle this hassle, the Preset option of the Happy elementor Addons comes into play! Much like its name, it will let you select pre-made designs to create a web page faster and of course without compromising the quality. Currently, there are 400+ elementor preset designs available in Happy Addons for elementor. Try the happy elementor addons preset designs for elementor. Happy elementor addons are the inventor of the preset feature in the elementor ecosystem.
418
-
419
  [Check Demo](https://demo.happyaddons.com/presets-demo/)
420
 
 
421
 
422
- ### **UNLIMITED SECTION NESTING: USE UNLIMITED SECTION NESTING TO GO BEYOND THE LIMIT**
423
-
424
- With Elementor, you can create sections to make room for elements. We feel happy to say that by integrating the Happy Elementor add-ons, you can create infinite sections within a single section.
425
-
426
- And as usual, you can insert as many widgets as you want into those sections. Happy elementor addons are the inventor of the unlimited section nesting feature in the elementor ecosystem.
427
-
428
  [Check demo](https://demo.happyaddons.com/unlimited-section-nesting/)
429
 
430
-
431
- ### **LIVE COPY: COPY DESIGNS FROM DEMO SITES TO GET IT DONE RIGHT AWAY!**
432
-
433
  Sometimes you may wish to simulate exactly the same design that you see on our demo page. Amazingly, with the Live Copy option, you can do it at your disposal.
434
 
435
- This is a go-to way that lets you copy the code of the demo design from the demo site and allows you to use it directly on your Elementor edit panel.
436
-
437
- Unlike a theme template, using the demo designs won’t put any pressure on your media server which is a must-have to help load the page faster. Happy elementor addons are the inventor of the live copy elementor demo design feature in the elementor ecosystem.
438
 
 
439
  [Check Demo](https://demo.happyaddons.com/live-copy/)
440
 
441
-
442
- ### **IMAGE MASKING: MASK YOUR IMAGES WITHIN YOUR ELEMENTOR EDITING PANEL!**
443
-
444
- Sometimes, a square or circular-shaped image is not enough to create a good design in elementor. You might need different types of creative and unusual image shapes. HappyAddons for elementor is introducing custom-shaped images to bring a creative touch to your design. Now you will be able to convert your square image into lovely custom shapes. No hassles, just upload your image and choose your shape. Boom! Just done. Very Easy. Happy elementor addons are the inventor of the image masking feature in the elementor ecosystem.
445
-
446
  [Check Demo](https://happyaddons.com/image-masking-demo/)
447
-
448
  [youtube https://www.youtube.com/watch?v=0U3wq3oxy2k&t=2s&ab_channel=HappyAddons]
449
 
450
-
451
- ### **HAPPY PARTICLE EFFECT: ADD EXCLUSIVE BACKGROUND PARTICLE EFFECTS TO YOUR WEBSITE!**
452
-
453
- Team, happy elementor addons has added three predefined particle effects, which are commonly used, Polygon, NASA, Snow. But you have plenty of options for adding as much as your need with our custom Particle adding option. Moreover, you can customize them at your desired level. You can set the number of Particles, the size of your particles, the speed of the Particle movements, and the flexibility to add Hover Effect to your Particle effects. Try Happy Elementor addons elementor particle effects.
454
-
455
  [Check Demo](https://demo.happyaddons.com/happy-particle-demo/)
456
 
457
  [youtube https://www.youtube.com/watch?v=iD83Sr4pFSw&ab_channel=HappyAddons]
458
 
459
 
460
- ### **DISPLAY CONDITION: SHOW, HIDE AND SCHEDULE CONTENT TO DISPLAY ON YOUR SITE ACCORDING TO YOUR NEED!**
461
-
462
- This feature will help you to display your content depending on different kinds of conditions like Browser, Operating System, Date Range, Time, and many more. Happy elementor addons are the inventor of the Conditional display or display condition feature in the elementor ecosystem.
463
-
464
  [Check Demo](https://happyaddons.com/display-condition/)
465
-
466
  [youtube https://www.youtube.com/watch?v=kiGj1ZyX6T4&ab_channel=HappyAddons]
467
 
468
 
469
- ### **ENJOY EXTRA BENEFITS FROM HAPPY ELEMENTOR ADDONS!**
470
 
471
- Our code doesn’t stink and we don’t leave you blindfolded when you need support from us. Apart from the freemium widgets, the plugin will pamper you with a fleet of professional quality features.
472
 
473
  For example, it’s compatible with almost every WordPress theme; it’s lightweight and fast; comes up with motion effects, and empowers you with enormous customizability options. In addition, the plugin also works cohesively with the stock Elementor widgets.
474
 
475
- If you don’t understand a feature or fail to give it the desired look which was already demonstrated in a demo, or it’s not working as expected – we got your back. Just drop us a line and we will do our best to help you figure a way out.
476
 
477
 
478
- ### **BUGS, TECHNICAL HINTS OR CONTRIBUTE**
479
 
480
  Please provide us with constructive feedback, contribute, and file any technical bugs on [GitHub Repository](https://github.com/weDevsOfficial/happy-elementor-addons/issues).
481
 
482
- **Stay connected with the Happy Elementor Addons Community**
483
 
484
- In case you want to share any ideas on Happy Addons with other users or if you are in any trouble, don’t feel stranded. Stay connected with [the Happy addons community](https://www.facebook.com/groups/HappyAddonsCommunity/).
 
 
485
 
486
 
487
- ### **PRIVACY POLICY**
488
 
489
  **Happy Addons for Elementor** uses [Appsero](https://appsero.com/) SDK to collect some telemetry data upon the user’s confirmation. This helps us to troubleshoot problems faster & make product improvements.
490
 
@@ -495,23 +500,23 @@ Integrating Appsero SDK **DOES NOT IMMEDIATELY** start gathering data, **without
495
  Learn more about how [Appsero collects and uses this data](https://appsero.com/privacy-policy/). Additionally, read the weDevs [privacy policy](https://wedevs.com/privacy-policy/) for better knowledge on it.
496
 
497
 
498
- ### **Missing Something in the Happy Elementor Addons?**
499
 
500
- If you are still finding some of the missing pieces in the Happy Elementor Addons Elementor Widget Library and want to share them with us then here is the Happy Elementor Addons public roadmap for you. You can submit your ideas and upvote other submitted ideas. And we will bring the elementor features and elementor widgets based on the upvotes in the Happy Elementor addons public roadmap.
501
 
502
  [Submit your ideas here.](https://happyaddons.com/roadmaps/#ideas)
503
 
504
 
505
- ### **HAPPY WITH OUR WORK?**
506
 
507
  We are really thankful to you that you have chosen our plugin. If our plugin brings a smile to your face while working, please share your happiness by giving us a 5***** rating in WordPress Org. It will make us happy and won’t take more than 2 mins.
508
 
509
- [I’m Happy to Give You 5⭐️](https://wordpress.org/support/plugin/happy-elementor-addons/reviews/?filter=5)
510
 
511
 
512
- ### **ABOUT THE MAKER**
513
 
514
- Despite Happy Addons for Elementor, being the newest addition to the product lineup of [weDevs](https://wedevs.com/), it has already managed to win the heart of its users with a staggering 5-star rating. The plugin is programmed in a way so you don’t require any prior coding know-how and is completely cross-browser compatible with mobile responsive features.
515
 
516
 
517
  == Frequently Asked Questions ==
@@ -569,6 +574,13 @@ For a more detailed explanation check out the following documentation
569
 
570
  == Changelog ==
571
 
 
 
 
 
 
 
 
572
  = 3.7.1 - 18 October 2022 =
573
 
574
  - Tweak: Scroll To Top feature enhancements like customize the icon, text, and image, and enable or disable the feature for different devices. Plus, we've fixed the page refresh issue when making changes to the settings
@@ -584,16 +596,6 @@ For a more detailed explanation check out the following documentation
584
  - Fix: Threesixty rotation & Taxonomy List are not working as a template.
585
  - Fix: Post list excerpt not showing.
586
 
587
- = 3.7.1 - 21 September 2022 =
588
-
589
- - Tweak: Scroll To Top feature enhancements like customizing the icon, text, and image, and enable or disable the feature for different devices. Plus, we've fixed the page refresh issue when making changes to the settings
590
- - Tweak: Horizontal scrolling on Data Table mobile responsive view.
591
- - Tweak: Word Break Option Introduce on Data Table mobile responsive view.
592
- - Tweak: Meta items Removal option in Post Tab Widget.
593
- - Tweak: Advance Post Queries & Query ID integration with the Post Tab Widgets.
594
- - Tweak: Info Box Widget, media position responsive control.
595
- - Fix: Threesixty rotation & Taxonomy List are not working as a template.
596
-
597
  = 3.7.0 - 30 August 2022 =
598
 
599
  - New: Scroll To Top - Feature
1
+ === Happy Addons for Elementor (Mega Menu, Post Grid, WooCommerce Product Grid, Table, Event Calendar, Slider, EDD Widgets, Template) ===
2
+ Plugin Name: Happy Addons for Elementor (Mega Menu, Post Grid, WooCommerce Product Grid, Table, Event Calendar, Slider, EDD Widgets, Template)
3
+ Version: 3.7.2
4
  Author: weDevs
5
  Author URI: https://happyaddons.com/
6
  Contributors: happyaddons, thehappymonster, wedevs
12
  License: GPLv2
13
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
14
 
15
+ [Happy Addons for Elementor](https://happyaddons.com/) come with 500+ templates, 114+ free & pro essential widgets - Mega Menu, Testimonial, Slider, News Ticker, Blog Post Grid, Gallery, WooCommerce Products widgets, Modal Popup, Tooltip Google maps, Carousels & more. Features Like Equal Height, Text Stroke, Shape Dividers, Floating Effect, Grid Layout, EDD Widgets,500+ Icons, etc.
16
 
17
  == Description ==
18
 
19
+ [Happy Addons for Elementor](https://happyaddons.com/) page builder Is One of the Best Addons That Comes With **114+** Free & Pro Widgets and **22+** Problem-Solving Features to enhance [Elementor](https://wordpress.org/plugins/elementor/) Free & Pro. And Our widgets are not limited to customizations. All the widgets stand out from other third-party Elementor addons widgets in terms of flexibility of customizations. It will broaden your design skills. Our 70+ full-page Templates and 500+ readymade design blocks will help you to kickstart your work swiftly.
20
+
21
+ ### Useful Links
22
+
23
+ [Demo](https://happyaddons.com/elementor-widgets/) | [Docs](https://happyaddons.com/docs/) | [Video Tutorials](https://www.youtube.com/channel/UC1-e7ewkKB1Dao1U90QFQFA) | [Support](https://happyaddons.com/happy-support/) | [Share Idea](https://happyaddons.com/roadmaps/#ideas) | [Facebook Group](https://www.facebook.com/groups/HappyAddonsCommunity) | [Upgrade to Pro](https://happyaddons.com/pricing/)
24
+
25
+ ### At a glance of Happy Addons widgets and features
26
+
27
+ **Widget List: available in the free version**
28
+
29
+
30
+
31
+ * Card
32
+ * Info Box
33
+ * Icon Box
34
+ * Skill Bars
35
+ * Review
36
+ * Image Compare
37
+ * Gradient Heading
38
+ * Team Member
39
+ * Dual Button
40
+ * Number
41
+ * Justified Grid
42
+ * Testimonial
43
+ * Logo Grid
44
+ * Slider
45
+ * Carousel
46
+ * Image Grid
47
+ * Step Flow
48
+ * Fun Factor
49
+ * Calendly
50
+ * News Ticker
51
+ * Social Icon
52
+ * Twitter Feed
53
+ * Bar Chart
54
+ * 360° Rotation
55
+ * Data Table
56
+ * Pricing Table Lite
57
+ * Flip Box Lite
58
+ * Post Tab
59
+ * Post List
60
+ * Taxonomy List
61
+ * Horizontal TimeLine
62
+ * Social Share
63
+ * Event Calendar
64
+ * Image Hover Effect
65
+ * Animated Link
66
+ * Mailchimp Widget
67
+ * Content Switcher
68
+ * Image Stack Group
69
+ * Creative Button
70
+ * Image Accordion
71
+ * PDF View Widget
72
+ * Contact Form 7
73
+ * Caldera Forms
74
+ * weForms
75
+ * Ninja Forms
76
+ * WPForms
77
+ * Gravity Forms
78
+ * WP Fluent Forms
79
+ * Comparison Table
80
+ * Photo Stack
81
+ * Lord Icon
82
+
83
+ **Widget List: available in Happy Addons Pro**
84
+
85
+
86
+
87
+ * Advanced Slider
88
+ * Happy Mega Menu
89
+ * One Page Navigation Widget
90
+ * Unfold Widget
91
+ * Off-Canvas Content or Menu Widget
92
+ * Feature List
93
+ * Pricing Table
94
+ * Flip Box
95
+ * Advanced Heading
96
+ * Hover Box
97
+ * Team Carousel
98
+ * Scrolling Image
99
+ * Advanced Tab
100
+ * Advanced Accordion
101
+ * Testimonial Carousel
102
+ * Logo Carousel
103
+ * Animated Text
104
+ * Timeline
105
+ * Instagram Feed
106
+ * Advanced Toggle
107
+ * List Group
108
+ * Countdown
109
+ * Source Code
110
+ * Promo Box
111
+ * Hot Spot
112
+ * Price Menu
113
+ * Business Hour
114
+ * Line Chart
115
+ * Pie & Doughnut Chart
116
+ * Polar Area Chart
117
+ * Radar Chart
118
+ * Facebook Feed
119
+ * Twitter Feed Carousel
120
+ * Breadcrumbs
121
+ * Sticky Video
122
+ * Advanced Data table
123
+ * Modal Popup
124
+ * Single Image Scroll
125
+ * Post Grid
126
+ * Post Tiles
127
+ * Smart Post List
128
+ * Post Carousel
129
+ * Author List
130
+ * WooCommerce Product Grid
131
+ * WooCommerce Product Carousel
132
+ * WooCommerce Product Category Grid
133
+ * WooCommerce Product Category Carousel
134
+ * WooCommerce Single Product
135
+ * WooCommerce Mini Cart
136
+ * Advanced Google Map Widget
137
+ * EDD Single Product Widget
138
+ * EDD Product Grid Widget
139
+ * EDD Product Carousel Widget
140
+ * EDD Category Grid Widget
141
+ * EDD Category Carousel Widget
142
+ * EDD Cart Widget
143
+ * EDD Checkout Widget
144
+ * EDD login Widget
145
+ * EDD Registration Widget
146
+ * EDD Purchase WIdget
147
+ * EDD Download Widget
148
+ * Image Swap Widget
149
+
150
+
151
+ ### Happy Addons Features come extenions or modules
152
+
153
+ **Free features of Happy Addons**
154
+
155
+
156
+
157
+ * Happy Templates
158
+ * Happy Shape Dividers
159
+ * Happy Tooltip
160
+ * Equal Heights
161
+ * Text Outline
162
+ * Background Overlay
163
+ * Happy Icons
164
+ * Managing Column Order on Mobile Responsive Mood
165
+ * Manage Column Width by Adding Pixels
166
+ * Happy Clone
167
+ * Fixed Size Controls in Elementor Button Widget
168
+ * Grid Layer
169
+ * Wrapper Link
170
+ * Floating Effects
171
+ * CSS Transform
172
+ * Scroll To Top Feature
173
+
174
+ **Premium Features of Happy Addons**
175
+
176
+
177
+
178
+ * Cross Domain Copy Paste
179
+ * Preset
180
+ * Unlimited Section Nesting
181
+ * Live Copy
182
+ * Image Masking
183
+ * Particle Effect
184
+ * Display Condition
185
+
186
+ ### Why Should You Choose Happy Addons For Elementor?
187
+
188
+ Happy Addons is the pioneer of adding exclusive problem-solving features. Also, we have added premium quality Elementor Widgets in the Widget Library. Here are some reasons for choosing Happy Addons over any other Elementor Addons:
189
+
190
+
191
+
192
+ 1. From now on, you can create a mega menu, simple navigation menu, and horizontal nav menu with our happy menu widget.
193
+ 2. Create off-canvas content or a menu for your site with an off-canvas widget.
194
+ 3. Manage the one-page navigation menu with the help of our one-page navigation widget.
195
+ 4. You can create an advanced data table within elementor and the option to add a Google sheet to your website.
196
+ 5. Facility to add text strokes or outlines to elementor typography widgets.
197
+ 6. Manage your event calendars and add google calendar using the event calendar widget.
198
+ 7. Design your WooCommerce sites with a WooCommerce widget pack.
199
+ 1. Create a WooCommerce product grid page with our woo product grid widget.
200
+ 2. Add product carousel items with our product carousel widget.
201
+ 8. Create a blog archive page with our post grid widget.
202
+ 9. Add a post carousel to your site with our post carousel widget.
203
+ 10. Facility to copy and paste all of your elements (Elementor Sections, Widgets, Images, Text, and design styles) within cross-domain sites.
204
+ 11. Masking your images into different shapes within the editing panel; no need to use photoshop or Figma for creating image masks.
205
+ 12. Flexibility to create advanced background parallax for your site,
206
+ 13. Create tooltips within any element of the site.
207
+ 14. Add a stunning pricing menu with the price menu widget.
208
+ 15. Unfold any element with the our unfold widget.
209
+ 16. Toggle your content with the content switcher widget.
210
+ 17. Flexibility to design Easy Digital Download Sites using the EDD widgets.
211
+ 18. 500+ line icons for your sites.
212
+ 19. 450+ readymade elementor template kits to use, along with 70+ full-page templates.
213
+ 20. WPML READY: You can easily use Happy Addons to build multilingual websites, as our plugin is 100% compatible with WPML.
214
+ 21. You can copy our demo content directly from our [demo site](https://demo.happyaddons.com/).
215
+ 22. Officially recommended by elementor page builder! we are now listed on their [official addons page](https://elementor.com/addons/).
216
+ 23. This Elementor addon is the latest addition to the list of [weDevs](https://wedevs.com/) premium product libraries. weDevs is famous for reliable after-sales service.
217
+
218
+ ### What You Will Get In Happy Addons for Elementor Free Version
219
+
220
+
221
+ **49** Free Widgets Are Available in the Happy Addons Free
222
+
223
+ It comes with plenty of Widgets in the free version. And all of the widgets are full of customization. Also, we have created design inspiration for each and every single widget. Let’s have a look at what you will get in our free version of Happy Addons for Elementor:
224
+
225
+
226
+
227
+ * **[Card](https://demo.happyaddons.com/elementor-card-widget-demo/)** – Incredibly powerful widget to demonstrate your products, articles, news, and creative posts using a beautiful combination of texts, links, badges, and images. Using built-in positioning and offset features, you can create eye-catchy designs. \
228
+ Our card widget will help you to create mesmerizing card items within elementor. You can add custom badge items to it. Also, you can add images and custom buttons to that. Check our card widget from our demo site. If you like the demo design, you can use the card items directly on your website with our live copy feature of Happy Addons Pro.
229
+ * **[Info Box](https://demo.happyaddons.com/elementor-info-box-widget-demo/)**– Our Info Box widget will help you create beautiful information boxes using icons, links, and texts, making them slick using the built-in positioning features. This info box widget is different from our card widget. It will allow you to add an elementor heading, descriptions, and button within it. Also, you can customize the heading, button, image, or icon of the info box widget. Check the demos of the info box widget.
230
+ * **[Icon Box](https://demo.happyaddons.com/elementor-icon-box-widget-demo/)** – The icon Box widget is a simplified version of Infobox but has powerful display features. Perfect for showcasing interesting information to your users in various styles. Our icon box widget is easy to customize. Within this icon box, you will get ‘Icon‘ to set the icon size and add padding, border, and box-shadow. You can also add a hover effect to your icon of the icon box widget. Moreover, you will get the flexibility to add 'Title‘ so that you can set text type using typography, add text-shadow, and text color within the icon box widget. Check our icon box widget from our demo site. If you like the demo design, you directly use the card items directly on your website with our live copy feature of Happy Addons for Elementor Pro.
231
+ * **[Skill Bars](https://demo.happyaddons.com/elementor-skill-bars-widget-demo/)** – This Skill Bar Widget is an essential building block to showcase user skills, task percentage, required tools, and other progressive information differently. Our skill bars widget comes with incredible customizing options to suit your needs. You can use the Team Skill Bars Widget to create beautiful designs. Text Color, Level Color, and Base Color are available in it. By using the coloring option of the Elementor Skill Bars widget, you can stand out your skillset from others. This skill bar widget will help you showcase your skillset on your website. Also, help you to increase the credibility of your portfolio. Use the skill bars widget to stand out in the crowd, as there are no design limitations in the Skill bar widget.
232
+ * **[Review](https://demo.happyaddons.com/elementor-review-widget-demo/)**– Showcase your user feedback, reviews, and rating more easily than ever using our review widget. Display user photos, texts, and star ratings. Make them stand out using built-in offsets and positioning features. User reviews and testimonials are so important to build your user’s trust in your brand. Our Review widget will be the best option to show Reviews on the site without hassle. What are you getting in this review widget? You can style your reviews by clicking on the ‘Review’ option. It is possible to set a maximum rating a user can give, such as 4.8 or even 5. Users can give reviews in stars or numbers. You can also set the review position, whether it should be on top or bottom, within the Elementor Review Widget. Also, you can customize the Reviewer image in this Widget.
233
+ * **[Image Compare](https://demo.happyaddons.com/elementor-image-compare-widget-demo/)** – Are you a photo editor, agency, or product designer who often needs to showcase your beautiful works in the form of a before and after slider? The Image compare widget is perfect for this job. And built-in styling options and vertical and horizontal orientation features can help you design these before-after sections with more creativity. Our image comparison widget will help you to compare your two product images Old Vs New in an amazing way. By maintaining a perfect image resolution, it will be able to detect major changes in the product. Get ready to showcase your product comparison exclusively by using this Image Compare widget.
234
+ * **[Gradient Heading](https://demo.happyaddons.com/elementor-gradient-heading-widget-demo/)** – Another gem to create eye-catchy headings for your websites. With our Gradient Heading widget, you can apply different gradient styles, angles, opacity, and positions to make them look even better across different device screens. It is the easiest way to add a gradient to your headlines and titles inside the Elementor page builder. So don’t waste your time creating a custom-coded gradient heading within your site; use the Gradient Heading widget to make an amazing gradient Heading for your site.
235
+ * **[Team Member](https://demo.happyaddons.com/elementor-team-member-widget-demo/)** – A perfect widget to showcase your beautiful team in various styles using texts, images, and social links. And just like our other widgets, you will find powerful styling options to make them stand out quite easily. Set your employee name and job title. You can add a short bio of his/her job if you want. Resize your texts using the headers h1 to h6. The alignment option allows you to move the image left, right, and center. Also, you can add social media links with social icons of your team members in the team member widget. So you will get the ultimate team member features within this team member widget.
236
+ * **[Dual Button](https://demo.happyaddons.com/elementor-dual-button-widget-demo/)** – Dual Button widget allows you to add two flexible and trendy action buttons in your sections in different styles. Usually, elementor buttons don’t have the facility to add additional content like- or, but, & type of linker within two buttons. Also, it will help you not to create so many doms for creating simple buttons. Try our dual-button widget.
237
+ * **[Number](https://demo.happyaddons.com/elementor-number-widget-demo/)** – Simply beautiful, this widget can help you create stunning number blocks with various styles and look-n-feels that are going to blow your mind. Our Number widget is familiar with showing numbers on websites. It could be anything related to number stat. Also, you will get the flexibility to customize the Number Widget. This widget is a very lightweight one.
238
+ * **[Justified Grid](https://demo.happyaddons.com/elementor-justified-grid-widget-demo/)** – Another pro-grade widget that can help create a beautiful justified grid. It has many options to make it stand out from the crowd. This Grid widget will help you to create isotope gallery items within your site. Also, you can add a hover effect to the justified images of the Justified Grid widget.
239
+ * **[Testimonial](https://demo.happyaddons.com/elementor-testimonial-widget-demo/)** – Create beautiful testimonial sections with different look-and-feels using the Testimonial widget. This will help you to create trust for your users. It comes with plenty of customizations. You don’t have to create any custom post types to show a testimonial for your websites. You can manage it from the editor panel. Also, you can add testimonial providers’ avatars and designations to make them more credible for your users. It’s a smart testimonial widget. Try our Testimonial Widget to make a trustworthy product or website.
240
+ * **[Logo Grid](https://demo.happyaddons.com/elementor-logo-grid-widget-demo)** – Showcase your clients or products using our logo grid widget, and display these items with styles. This widget will help you to create an amazing logo grid within your site. And this is a unique item among Elementor addons. You can show your client's logo items in a grid way with the help of the Logo Grid widget. So try our Logo Grid widget to showcase your logo items.
241
+ * **[Slider](https://demo.happyaddons.com/elementor-slider-widget-demo/)** – You can create sliders with beautiful animations and effects using our Slider widget. And just like our other widgets, you have many customization options. You can create outstanding slider items for free. Within our Slider widget, you can position your navigation items anywhere in the slider content area. So try this slider widget for free.
242
+ * **[Carousel](https://demo.happyaddons.com/elementor-carousel-widget-demo/)**– Create interesting images and text carousels using our carousel widget which comes with a lot of options. Most of the Elementor addons have the post carousel or WooCommerce product carousel but our carousel widget will help you to create a text carousel or simple image carousel without any hassle in your site. Isn’t it a cool carousel widget? So try this carousel widget now for free.
243
+ * **[Image Grid](https://demo.happyaddons.com/elementor-image-grid-widget-demo/)**– Simply beautiful, this widget can help you create stunning number blocks with various styles, and look-n-feels that are going to blow your mind. This Image Grid widget will help you to show grid images on your website. You can create a simple image grid without leaving your Editing Panel. Other image grid plugins like modular, Envira image gallery, and nextgen image gallery will not allow you to create gallery images within your editing panel. You must create an image gallery in your WordPress backend of the gallery plugins. But our Image grid gallery widget will not do this. You have full flexibility to create and customize the gallery images from the editing panel. And that’s why it’s the best grid image gallery widget among other Elementor addons.
244
+ * **[Step Flow](https://demo.happyaddons.com/elementor-step-flow-widget-demo/)** – Step flow widget will help you to create an excellent step-by-step visual diagram and instructions using this smart widget. This step flow widget will allow you to change directions and counters and make them look amazing with icons, texts, and colors. Our Step flow widget is the best option to show content on the step flow way. You can add images and text to the step flow widget. Also, you can change the typography of the Step flow widget.
245
+ * **[Fun Factor](https://demo.happyaddons.com/elementor-fun-factor-widget-demo/)** – The fun factor widget is a counter widget. You can set a counter number on your site. This type of fun factor or counter Widget will help you to create FOMO for the visitors. Also, it helps to show data of how many clients you have served or if you have a downloadable product and want to showcase the number of downloads in the front, so this fun factor widget or Counter widget will help you to achieve that. So try this fun factor widget to show numbers animatedly on your website. Also, you can add suffixes and prefixes to your numbers of this Fun Factor widget.
246
+ * **[Calendly](https://demo.happyaddons.com/elementor-calendly-widget-demo/)** – Schedule meetings without the back-and-forth emails through Calendly. We are happy to integrate this important application into our Happy Addons. As you know, Calendly is one of the market's best booking and appointment tools. But the embedding and styling system of Calendly is really tough. But if you use our Calendly widget, you can embed and customize your Calendly meetings in a lucrative way. It’s a missing piece among all of the Elementor addons. So try our Calendly widget to create a lucrative booking an appointment calendar for your website.
247
+ * **[News Ticker](https://demo.happyaddons.com/elementor-news-ticker-widget-demo/)** – Want to show updates, popular content, or messages on your website? You can have that by using this widget. The news ticker options are used by news or magazine websites. But now the trends have changed. News tickers can be used for various purposes. The main purpose of a newsticker is to show information consistently. In elementor is tough to manage without any external newsticker plugin. Now you can create news tickers within your Editing panel. You don’t have to leave the editing panel anymore while creating a newsticker section for your website. Try this news ticker widget to create amazing newsticker items for your website.
248
+ * **[Social Icon](https://demo.happyaddons.com/elementor-social-icon-widget-demo/)** – Beautifully insert and display your social links onto your webpage using this widget to easily connect with your site visitor by using social icon widget. Social icons are essential for a website. Using the social icon widget, you can add your company or personal social links to your website. Try the social icon widget.
249
+ * **[Twitter Feed](https://demo.happyaddons.com/elementor-twitter-feed-widget-demo/)**– Adding Twitter feeds isn’t such an easy task. But you can achieve it by using the Twitter feed widget. Just add your Twitter API to this widget, and you will get plenty of options to make it lucrative. We have created a few demo designs using our Twitter feed widget to get an idea of which type of things you can create with this Twitter feed widget.
250
+ * **[Bar Chart](https://demo.happyaddons.com/elementor-bar-chart-widget-demo/)** – Display bar charts in an animated and customizable bar form, essentially in case of imaging different data and other relevant statistical visualizations using our bar chart widget. This widget can help you to show various data. If you are running statistical sites, this type of data chart widget item might help you showcase your data in an advanced way. We have prepared so many demos on the Bar Chart widget. You can have a look at them.
251
+ * **[360° Rotation](https://demo.happyaddons.com/elementor-360-rotation-widget-demo/)** – Create 360 Degree rotated images for your Products with this 360-degree widget. Flexibility to add auto-rotate or click to the rotation functionality. Also, you can add Magnify Button to Zoom-in your pictures. ECommerce website owners usually use it to show the all side view of their products. This 360° Rotated widget will help you to create amazing rotated 360° images. This will help your users understand the product perfectly from different angles and help you get more sales. So try the 360° Rotate widget to create an amazing 360° Rotated image item for your products.
252
+ * **[Data Table](https://demo.happyaddons.com/elementor-datatable-widget-demo/)** – Using a data table on the website is difficult if you don’t have any coding ideas. However, our data table widget will solve this problem. Usually, most data table plugins do not allow you to create tables within the front-end editing panel. The data table plugins navigate you to create tables within their settings panel and give you a shortcode to set it on your desired sections. You can check the repository's Tablepress, ninja tables, and more table plugins. Most of them don’t have direct integration with the Elementor Page Builder. You have to be an expert to change the default look of the third-party data table plugins. Without the knowledge of HTML & CSS, you cannot do anything. But this data table widget will help you to create a data table within your Editing panel. Also, you don’t need to know CSS or HTML to design our Data table widget. Moreover, if you use the data table widget, you can add images and icons to your table without hassle. Check the various demos of the data table widget to get a vivid idea of how an awesome data table can be made with this widget.
253
+ * **[Pricing Table Lite](https://demo.happyaddons.com/elementor-pricing-table-widget-demo/)** – Create beautiful pricing tables with lots of customizations and a sleek look-n-feel using the Pricing table lite widget. Usually, we used to use table plugins to create such kinds of pricing tables in the past. But after having Elementor page builder in our WordPress Ecosystems, we get a huge opportunity to create stunning pricing tables to manage our products’ pricing pages. But with the Elementor, you must use many columns and inner sections to create a pricing table. Using the Pricing table lite widget, you can create a stunning pricing table menu without creating so many dom requests. We have created several demo designs for our pricing table widget. Check them all from the demo page of the pricing table widget.
254
+ * **[Flip Box Lite](https://demo.happyaddons.com/elementor-flip-box-widget-demo/)** – FlipBox helps you to deliver messages beautifully with before and after effects. Our Flip box widget will help you to create amazing flip box content for your website. There are several states to flip the content within our Flipbox widget. Check all the demos of the flip box widget.
255
+ * **[Post Tab](https://demo.happyaddons.com/elementor-post-tab-widget-demo/)** – Enable users to present your post in multiple workable tabs, ideally useful for grouped and related content if you use the Post tab widget. This post tab widget is now available in the free version. Post widgets are usually helpful for showing blog posts within your website. You will get full freedom to design your post tab content. Check the demo content of the Post Tab widget.
256
+ * **[Post List](https://demo.happyaddons.com/elementor-post-list-widget-demo/)** – List any post elegantly using this widget, displaying them creatively and innovatively. The post List widget displays your post content in a list view. Usually, this type of post widget is in the premium version of other third-party Elementor Addons. But you get this post list widget free in the Happy Addons. So try the free post list widget to display your post content in a list view.
257
+ * **[Taxonomy List](https://demo.happyaddons.com/elementor-taxonomy-widget-demo/)** – This Taxonomy widget will help you to create a list of posts by sorting categories, tags, and post formats. You will get plenty of customization facilities within the taxonomy list widget. It will help your visitors to sort the content in different taxonomy-wise. So try our taxonomy list widget for free to help your visitors.
258
+ * **[Horizontal TimeLine](https://demo.happyaddons.com/elementor-horizontal-timeline-widget-demo/)** – Design your storyline horizontally using the Elementor Horizontal Timeline Widget. It’s free! Unlike the vertical timeline widget, you can show your content horizontally with the help of this Horizontal Timeline widget. You can add images and text within this Horizontal timeline widget.
259
+ * **[Social Share](https://demo.happyaddons.com/elementor-social-share-widget-demo/)** – No need to buy a social share plugin anymore. Get many of the premium features of social share plugins within the Social Share widget for free! You can set your social share widget anywhere on your website. You have the full freedom to manage this social share widget. You can set color, customization, and typography to the social share widget. This social share widget will grab the associate link where you have set this widget. Try our social share widget, and don’t forget to check the demo of the social share widget.
260
+ * **[Event Calendar](https://demo.happyaddons.com/elementor-event-calendar-widget-demo/)** – Are you struggling to incorporate an event calendar on your website with the help of Elementor? Don’t worry; we have added an amazing Event Calendar Widget in the Free Version! You can create your personalized calendar manually or use your Google calendar or the Events Calendar Plugin’s calendar to showcase your events. We bring this event calendar widget for you to solve your daily problem. You have the full freedom to design your event calendars. \
261
+ Also, if you are managing your event calendar with your personal google calendar and want to embed it within your site, then you should try an event calendar widget to embed your google event calendar. Or, if you have plans to create your own custom event calendar, this widget will help you do that. It covers that custom event calendar creation feature too. Before testing this event calendar widget, check the demo created.
262
+ * **[Image Hover Effect](https://demo.happyaddons.com/elementor-image-hover-effect-widget-demo/)** – If you want to add lucrative hover effects to your website’s images, you can try our Image Hover Effect Widget. This image hover effect widget allows you to add 20+ stunning hover effects to your photos. You have full freedom to customize the Image Hover Effect widget. If you want to grab visitor attention, the image hover effect widget will be essential for your widget toolkit. Before testing the image hover effect, you can check the demo of the Image hover effect widget.
263
+ * **[Animated Link](https://demo.happyaddons.com/elementor-animated-link-widget-demo/)** – Are you wondering about increasing the click-through rate of your website’s links? Grab your visitor’s attention by adding different effects to your links using the Animated Link widget. This Animated link widget has plenty of hover effects for your website’s links. Choose the most suitable one and go. Before testing this widget, you can check our demos for the animated link widget.
264
+ * **[Mailchimp Widget](https://demo.happyaddons.com/elementor-mailchimp-widget-demo/)** – Now you can create lucrative Mailchimp forms with Mailchimp Widget. Usually, you don’t have the opportunity to add Mailchimp form directly to your landing pages. But now our Mailchimp widget will help you to create an amazing MailChimp form within your landing pages. And you can set tags for your MailChimp subscribers. Also, you can select your premade MailChimp list. No bar in Mailchimp form widget customization. \
265
+ You don’t need elementor pro to use our Mailchimp widget, as we have added a default form field of Mailchimp. With the Elementor Free version and the free version of the Happy addons, you can easily create a newsletter subscribe form or newsletter subscribe bar for your site. No hassle in the API integration for the Mailchimp widget. We have added a dedicated page for integrating the API credential. Just paste your MailChimp form API key to the Mailchimp Widget’s API input field of the backend page of the Happy Addons Credential Page. And all set to use the Mailchimp form widget. Plenty of customization is available in the Mailchimp form. Before testing the Mailchimp form widget, please check our demos.
266
+ * **[Content Switcher](https://demo.happyaddons.com/elementor-content-switcher-demo/)**– The content Switcher widget allows you to toggle sections, pages, or texts easily. The content switcher widget will help you to show any kind of toggle content within your website. You can even add any widgets or templates in the content switcher widget. It’s used to toggle two different types of content. Like if you have two types of pricing menus the annual pricing menu and the lifetime pricing menu, then you can use our content switcher widget to show the two different pricing tables within the same section of your website. As you have full freedom to add any kind of template within the content switcher widget, then there is no limitation of customization. And this content switcher widget is a unique addition to our free pack, which is missing in the other third-party Elementor addons free widget pack.
267
+ * **[Image Stack Group](https://demo.happyaddons.com/elementor-image-stack-group-demo/)** – Sometimes, we have to show images in a stack group format to create an eye-catchy look. But it’s so tough to create a single stack group of images. But with our Image Stack Group widget, you can easily create an image-stacked group. You can get the Image Stack Group widget in the free version of ours.
268
+ * **[Creative Button](https://demo.happyaddons.com/elementor-creative-button-demo/)** – Are you wondering about creating an outstanding, eye-catching look by adding exclusive button styles & effects to your website? Create a marvelous Call To Action through our Creative Buttons Widget and redirect visitors to the right place. There is now no limitation to creating amazing buttons for your website. Also, we have added the magnetic effect to the creative button. So that you can grab your website’s visitor’s attention to increase the click rate of the creative button. And don’t forget to check the demo of the creative button widget created by us.
269
+ * **[Image Accordion](https://demo.happyaddons.com/elementor-image-accordion-demo/)** – This Image Accordion widget comes with interactive design looks. You can create unique accordions for images. It will help you keep your users longer on the website. Sometimes you will need to show some amazing interactive image accordions to your website to create a wow effect for the visitors. The image accordion widget will be the life savior for you. You can add an amazing effect to the images using it. Don’t forget to check the demos of the Image Accordion, created by us.
270
+ * **[PDF View ](https://demo.happyaddons.com/elementor-pdf-view-widget-demo/)**– If you are looking for a PDF embedder or PDF Viewer WordPress plugin for your website to embed your PDF files, you are in the right place. We have come up with the ultimate PDF embedder solution for you. We have added PDF View Widget, Free Version 3.3.1. We are the pioneer of adding a PDF view widget in the Widget Library. Using this PDF View widget, you can embed or view PDF files from external links or upload them directly to your website as PDF Media Files. Also, in this PDF View widget, you will get plenty of customization options. Now you can show a Resume PDF, Invoice PDF, Ebook PDF version, Magazine PDF version, and more with the help of the PDF View Widget.
271
+ * **[Contact Form 7](https://demo.happyaddons.com/elementor-contact-form-7-widget-demo/)** – This utility widget helps you to integrate existing forms built using the CF7 plugin across your web pages without spending too much time. It’s tough to manage the default contact form 7 without using any CSS. But we have added all kinds of design facilities to the contact form 7. You can easily embed your contact form 7 anywhere on your website. You don’t need the knowledge of CSS to customize your contact form 7 forms if you use our contact form 7 widget. And it comes in the free version of the Happy Addons for elementor.
272
+ * **[Caldera Forms](https://demo.happyaddons.com/elementor-caldera-forms-widget-demo/)** – This widget can help you to display your caldera forms on your web pages. By default, the design customization of the caldera form is quite tough. You have to be a CSS expert. But we have solved the problem. Now, you can customize your caldera form using our Caldera Form widget. It’s free to use. Before using the caldera form widget, you can check our demos.
273
+ * **[weForms](https://demo.happyaddons.com/elementor-we-forms-widget-demo/)** – Created forms using the weForms plugin and looking for a way to display those on your Elementor-powered pages? This is the answer to that. You can now use our weForms widget to customize your weForms forms without leaving your editing panel. Check the demos of the weForms widget created by us.
274
+ * **[Ninja Forms](https://demo.happyaddons.com/elementor-ninja-form-widget-demo/)** – Use this widget to embed forms created using Ninja Forms to display seamlessly on your web pages. Various styling options will help you to look at them even better. Ninja Forms is one of the popular form builder plugins. But you have to pay extra for having the customization feature in the default version of Ninja forms. But we have come up with an easy solution for Ninja Forms users. You will get a Ninja form widget for free. We have added every possible customization facility to the Ninja Forms widget. We have created several demos for you; please check the demos of the Ninja Forms Widget.
275
+ * **[WPForms](https://demo.happyaddons.com/elementor-wpform-widget-demo/)** – WP Forms has become the most popular form builder in the WordPress Community. The WPforms became popular due to their vast features and customization facility. But the design customization is also a limitation for WP Forms users. But we bring a free solution for the WP forms users. You will get a free WP forms widget in the free version. This WPforms widget will help you to design your forms to the next level. Don’t forget to check the demos of the WPforms widget we created.
276
+ * **[Gravity Forms](https://demo.happyaddons.com/elementor-gravity-form-widget-demo/)** – While using Gravity forms, you may want to change the appearance of the form fields. With the Happy Addons, you can spruce up your Gravity forms like a pro. But it’s already a premium plugin. But the design customization is also challenging. That’s why we bring a free solution to help the Gravity forms user base. This gravity form widget will help you to reshape your default form widget without any hassle. You can check the demos for Gravity Forms Widget created by us. You will get an idea of what you will get in the free version of the Gravity forms widget.
277
+ * **[WP Fluent Forms](https://demo.happyaddons.com/elementor-fluent-form-widget-demo/)** – Easily customize and use Fluent Forms using this super intuitive widget. The WP Fluent Forms are now becoming very popular. But the customization of the fluent forms is also difficult. You have to be a CSS expert as well. But Team Happy Addons for Elementor also brings light to this issue. You can customize your WP fluent forms with the free widget of the WP Fluent Forms. No need to be an expert to customize the Fluent Form widget. We have also made demos for the Fluent Forms widget. Check the demos of the WP Fluent Forms widget.
278
+ * **[Comparison Table](https://demo.happyaddons.com/elementor-comparison-table-widget-demo/)** – The comparison table will help your site visitors to buy your product, sign up for membership, contact, or just request a quote. Are you wondering about creating comparison tables for your affiliated products, gadgets, features, services, or anything related to your website? Try Happy Addons new comparison table widget for Elementor. It’s available in our free version.
279
+ * **[Photo Stack](https://demo.happyaddons.com/elementor-photo-stack-widget-demo/)**– Our Photo Stack Widget will help you achieve a critical layout of Images where you don’t have to use multiple columns and intersections to achieve that. With the help of the Photo Stack widget, you can easily achieve the layered image style without any technical knowledge. Showcase multiple layered images within the website by using the photo stack widget.
280
+ * **[Lord Icon](https://demo-x.happyaddons.com/elementor-lordicon-widget-demo/)** – Lord icon is a very much popular element in the web development industry. We often use this feature to add an animated icon to our websites. But previously, it was not that easy to add and customize the lord icons to the website. But from now on, you can add the lord icon to your websites by using the our lord Icon widget. You can customize the color and other options directly from your editing panel. Lord Icon WIdget can be used separately in any place on the website; also, we have added support to the lord icons in our Info Box Widget and Icon Box Widget. Use the Lord Icon Widget.
281
+
282
+ ### 20+ Free Elementor Enhancement Features Are Available in the Happy Addons for Elementor
283
+
284
+ Happy Addons not only comes with extendable widgets but also has some cool features which help you to increase your web designing skill. You will get 20+ exclusive features for Free.
285
+
286
+ * **[Happy Templates](https://happyaddons.com/template-importer/)** – Finally, we are happy to announce that we are introducing an Elementor Template import feature within our Happy Addons. Initially, it comes with almost 500 ready-made templates. We will continuously improve our template library. Both our Free and Pro users can use happy templates. Templates are labeled in two tags, Pro and Free. To import premium templates you will need the [Happy Addons Pro](https://happyaddons.com/pricing). The template import feature works like the Default Template importing feature. Additionally, you can check the previews in three device viewports; Desktop, Tab, and Mobile.
287
+
288
+ **Full Page Elementor Templates**- You will now get plenty of Full page templates. It is easy to use. Just import the templates, use them within your site, and do some little bit of customizations. You will get business website page templates, contact page templates, Fitness Page Templates, Black Friday Deal Page templates, Cyber Monday Page Templates, Halloween Page Templates, and more misc full-page templates. We are planning to bring a Template kit pack in the future.
289
+
290
+ * **[Happy Shape Dividers](https://happyaddons.com/happy-shape-divider/)** – If you want to get some unique shape dividers within your elementor shape divider you can use our Shape Dividers. Initially, you will get 18+ new shape dividers. We are the pioneer in adding different shape dividers to the default shape dividers library to give the users some extra shape dividers. Reshape your Pages with the new shape dividers.
291
+ * **[Happy Tooltip](https://happyaddons.com/happy-tooltip/)** – With our advanced tooltip feature, you can add tooltips to any element of your website. Add images, GIFs, and Background images to your tooltips. This tooltip module broadens a new way to create amazing tooltips. You don’t need any extra third-party tooltip plugin from the WordPress repository to add Tooltips. You don’t have to bother with the tooltip shortcuts to add tooltips to your website. You can add tooltips from the editing panel of your website. You don’t have to bother with back-and-forth challenges like other third-party tooltip plugins. Select the elementor widget or section where you want to add your tooltip contents and do it from your editing panel with our Happy Tooltip feature.
292
+ We have added two types of behavior on the tooltips. You can show tooltips by clicking or on hover. Also, you will get plenty of tooltip animations in the Happy Addons for Elementor tooltip feature. And all the awesome tooltip features come with the free version.
293
+ * **[Elementor Equal Heights](https://happyaddons.com/equal-height-feature/)**– By default, you cannot set the equal column heights to your columns. But from now you can set equal heights to your Columns and widgets without using zero coding knowledge by using the Elementor Equal Heights feature. Usually, Equal Heights requires when you have different lengths of contents on the columns. And there is no easy way to fix this. You have to add more space or do some CSS stuff. But with this feature, you can fix the issue easily.
294
+ * **[Text Outline](https://happyaddons.com/text-outline/)** – With this Text Outline feature, you can add an exterior border around each character of your text or Heading lines. You can create Neon Text Effects, Parallax Heading Effects, Stroke Heading Effects, and much more. You can also apply this feature in the Elementor’s Default Heading Widgets. Here is the list of widgets within which you will get this text outline option,
295
+ * Elementor Heading Widget
296
+ * Elementor Page Title Widget
297
+ * Elementor Site Title Widget
298
+ * Elementor Post Title Widget
299
+ * Elementor Product Title Widget
300
+ * Elementor Animated Heading Widget
301
+ * Happy Addons Gradient Heading Widget
302
 
303
  Here are some design inspirations for you. **[Demo](https://demo.happyaddons.com/text-outline/)**
304
 
305
+ If you are looking for an awesome handy tool to make a difference in your website, don’t miss out on the chance to try Text Outline for free. And it is a very lightweight feature to create amazing design aspects within your website. We bring it before Elementor does.
 
 
 
 
 
 
 
 
306
 
307
+ * **[Background Overlay](https://happyaddons.com/background-overlay-demo/)** – The Background overlay extension will allow you to add images, colors, and icons behind any widget. By default, you can add background overlay to the Sections and Columns, but it’s quite tough to add Background overlay to the widgets. But now, with the help of our background overlay extension, you can add a different look to your widgets. Interestingly, it will work with any third-party add-ons.
308
+ * **[Happy Icons](https://happyaddons.com/happy-icon/)** – This will help you decorate your web page. By default, you will get Font Awesome filled icons, but the line icons are now trendy. You can add line icons to every possible icon-supported widget. Happy line icons come with the free version of Happy Addons for Elementor. It will reduce your pain to upload SVG icons every time.
309
+ * **[Happy Column Control -Managing Column Order on Mobile Responsive Mood ](https://happyaddons.com/happy-column-control/)**– Your designed web page may contain some columns that may require reordering in the mobile device view. Using this Column Control feature, you can rearrange the order of the column in small devices. It’s very easy to use. You don’t need extra knowledge to order your columns on mobile and tablet devices. You just have to set the number chronologically to the column ordering feature. It will help you to get the desired column order on the small screen of the sites.
310
+ * **[Manage Column Width by Adding Pixels](https://happyaddons.com/happy-column-control/)** – You can control the column width of your widgets with percentage parameters in Elementor. However, sometimes, you need to adjust the column width to meet your design aesthetics. The Column width by adding pixels feature will let you do so easily.
311
+ * **[Happy Clone](https://happyaddons.com/happy-clone-demo/)** – While designing with Elementor, you may need to duplicate pages or posts from the finder by using the buttons (CMD/CTRL + E). Surprisingly, using this feature, you can clone pages and posts lightning-fast from the finder. Also, this duplicator feature will help you to duplicate your posts and pages. You don’t need any third-party duplicator plugin to clone your page and posts. And interestingly, this handy Happy clone feature comes with the free version. So try the Happy clone or duplicator extension to duplicate your posts and pages.
312
+ * **[Fixed Size Controls in Elementor Button Widget](https://happyaddons.com/docs/happy-addons-for-elementor/happy-features/fixed-size-controls-in-elementor-button-widget/)** – Sometimes, you may need to make perfectly circular-shaped buttons. With this free feature, you can just set a fixed size; that is, by specifying an equal height and width of the Elementor Button widget, you can make a circle button.
313
+ * **[Grid Layer](https://happyaddons.com/happy-grid-layout-demo/)** – Maintain proper alignment of your page’s elements using this tool. Enjoy full flexibility while setting your grid color, width, and position of your grid layout. Btw its not the grid system. It’s a design system to create perfectly aligned designs for your website. If you are familiar with other designing tools like Figma, Adobe XD, Adobe Illustrator, or sketch, you will get the same design grid layer system within the editing panel of your website.
314
+ * **[Wrapper Link](https://happyaddons.com/wrapper-link-feature-demo/)** – No limitation on adding links to specific areas of your column or sections if you use our Wrapper Link. Use it to insert links to any column, section, or other places you want. So don’t miss out on the chance to use our Wrapper link module. It will be helpful to increase the click rate of any content.
315
+ * **[Floating Effects](https://happyaddons.com/elementor-floating-effect-demo-2/)** – You can create stunning animations for any widget using Floating Effects. Translate, Rotate, or Scale Imagination is the limit! Happy Addons floating effect will help you translate, rotate, or Scale any elements and widgets without using CSS directly. Don’t miss the chance to make eye-catchy design elements to your website. \
316
 
317
  [youtube https://www.youtube.com/watch?v=LmtacsLcFPU&ab_channel=HappyAddons]
318
+ **Floating Effects Used For Space Effect Illustration:**
319
+ With the help of the Happy Addons for Elementor floating effect extension, you can create this kind of amazing Space effect.
 
 
320
 
321
  [youtube https://www.youtube.com/watch?v=F33g3zqkeog&ab_channel=HappyAddons]
322
 
323
+ * **[CSS Transform](https://happyaddons.com/elementor-css-transform-demo-3/)** – You can apply various CSS transforms like translate, rotate, scale, and skew without any limitations within any Widget with any other third-party elementor addons. It’s a global feature. Don’t miss the chance to use the CSS transform module to create an extraordinary look for your website.
324
+ * **[Scroll To Top Feature:](https://happyaddons.com/docs/happy-addons-for-elementor/happy-features/scroll-to-top-button/)** – Scroll to top feature is commonly used in websites. We often use scroll-to-top plugins or different methods to add that option to the web pages. But don’t worry; you can add this option to your websites within Editing Panel by using our Scroll to the top feature. You can set the scroll to the top button for all pages or can set a condition for any specific page not to show the scroll to the top button.
325
 
326
+ ### Presenting The All-Exclusive Widgets & Features Happy Addons for Elementor Pro
327
 
328
+ The Happy Addons for Elementor ships not only with some unique premium features but also with premium widgets. The premium features are 100% unique and exclusive, and the premium widgets are there to give you professional assistance to craft any webpage design.
 
 
 
329
 
330
  [youtube https://www.youtube.com/watch?v=QwJrFMtfO2U&ab_channel=HappyAddons]
331
 
332
+ _Introducing Happy Addons Pro (Check What You Will Get in the Pro Version of it)_
333
+
334
+ ### 50+ Premium Elementor Widgets Of Happy Addons For Elementor (Pro)
335
+
336
+ If you are still craving more Elementor widgets, then the following premium widgets are there to quench your thirst. The best part is that you can copy and paste the design source code, so you won’t have to make any design from scratch. Let’s explore the world of Happy Addons for Elementor Pro Widgets:
337
+
338
+
339
+
340
+ * **[Advanced Slider](https://demo.happyaddons.com/elementor-advanced-slider-widget-demo/)** – Bored with your typical sliders? Try our advanced slider. Create mesmerizing slides within your Sites using it. You can add premade sections to your slides of the advanced slider. So you have the full freedom to design any kind of design within the advanced slider widget.
341
+ * **[Happy Mega Menu](https://demo.happyaddons.com/elementor-happy-mega-menu-widget-demo/)** – Struggling with large-scale menu items? Happy Mega Menu is the best solution to your problems. You can create mega menus like Adidas, Dribbble, Puma, Invision, etc. Mega Menus is a game-changing item for websites. You can create eye-catchy menu items with the megamenu. This Mega Menu widget will help you achieve any type of mega menu that is impossible with the default elementor menu items. Also, you can use our Mega Menu widget to design a simple nav menu for your website. So don’t miss the chance to have a powerful mega menu in your widget package. Before buying the happy addons to get the happy mega menu in your element pack, we request you to look into the demo designs for the mega menu widget.
342
+ * **[One Page Navigation Widget](https://demo.happyaddons.com/elementor-one-page-navigation-widget-demo/)** – Our one-page navigation widget will help you create lucrative one page nav content for your site. It has 9 design controls with a smooth scrolling option. You can show any kind of design within the one page nav widget. This One Page Navigation Widget is usually used to show multiple contents within one page with a floating navigation menu.
343
+ * **[Unfold Widget](https://demo.happyaddons.com/elementor-unfold-widget-demo/)** – You can organize and save space on your webpage with Happy Addons Unfold Widget. This widget will help you create interactive content along with neat and clean web pages. Moreover, you can unfold the content with a click or mouse hover action. We have created amazing unfold widget demos for you. So before trying the widget, we like to request you to check the demos.
344
+ * **[Off-Canvas Content or Menu Widget](https://demo.happyaddons.com/elementor-off-canvas-content-demo/)** – Our off-canvas navigation content or menu widget will give you the freedom to create any kind of off canvas content or offcanvas menu items for your websites. This Off canvas content widget is also popular as a flyout menu widget. You can set any kind of flyout menu items for your website.
345
+ * **[Feature List](https://demo.happyaddons.com/elementor-feature-list-widget-demo/)** – You can display your product features using different styles using the feature list widget. As a bonus, you can also customize every predefined design of the feature list widget. Check the demos of our Feature list widget. It’s available in the pro version of Happy Addons for Elementor.
346
+ * **[Pricing Table](https://demo.happyaddons.com/elementor-pricing-table-widget-demo/)** – This one-of-a-kind widget will allow you to create any pricing table under the sun. As a surprise, you can use gradient backgrounds, oval-shaped buttons, font awesome icons, background fill colors, different heights, dark moods, and so on within the Pricing Table widget of Happy Addons for Elementor. This pricing table widget can be used within WooCommerce or EDD (Easy digital downloads) managed websites. Also, you can add badges, tooltips, and more within the pricing table widget created.
347
+ * **[Flip Box](https://demo.happyaddons.com/elementor-flip-box-widget-demo-2/)** – This exquisite flip box widget will help you show different messages or texts before and after a user hovers over a certain element. Like the other widgets, you can customize this with a background image, gutter, and circular arrow navigation on both sides. We have added the 3d flip box design within the Flip Box widget. This flip box widget is in the Pro version. Also, we have created so many demos for the flip box widget.
348
+ * **[Advanced Heading](https://demo.happyaddons.com/elementor-advanced-heading-widget-demo/)** – With the Advanced Heading widget, you can create beautiful heading designs for the headline text of your Website. Like the other Elementor widgets, you will get many customization options for different text sections. Also, you can check the demos of the Advance heading widget.
349
+ * **[Hover Box](https://demo.happyaddons.com/elementor-image-hover-box-widget-demo/)** – Give boring images lives by adding dynamic animated texts with this nifty little tool. You can display texts with the Hover Box widget right after a user hovers an image. This Hover Box widget is quite different from regular hover box items. Check the demo of the hover box widget.
350
+ * **[Team Carousel](https://demo.happyaddons.com/elementor-team-carousel-widget-demo/)** – Present your team members with beautiful carousels that include social profile buttons, arrow icons, and great customizability by using the team carousel widget. You can do lots of design customization within the Team Carousel widget. Also, it’s the best possible way to show team members within a single section.
351
+ * **[Scrolling Image](https://demo.happyaddons.com/elementor-scrolling-image-widget-demo/)** – Using the scrolling image widget, you can show your products or services in a way that slides horizontally or vertically. You can also create a stunning photo gallery with this awesome scrolling widget within your site. Check the demos created by us of the Scrolling image widget.
352
+ * **[Advanced Tab](https://demo.happyaddons.com/elementor-advanced-tab-widget-demo/)** – This widget will enable you to show your content by creating advanced tabbed content sections using full-controlled customizations. You will get the option to add a custom-made elementor section into the Advanced Tab widget. This Advanced Tab widget mainly shows tabbed contents within a single section. So don’t miss the chance to create tabbed content with the help of the Advanced Tab widget.
353
+ * **[Advanced Accordion](https://demo.happyaddons.com/elementor-advanced-accordion-widget-demo/)** – Like the Advanced Tab widget, if you want to provide your user with extra information using a collapsing effect in different directions, this is the widget you should go for. In the Advanced Accordion widget, you can use any premade sections. Show advanced content within your Accordion widget. You don’t need any accordion plugin to create an accordion for your WordPress website. Use the Advanced Accordion Widget to add an accordion to your website.
354
+ * **[Testimonial Carousel](https://demo.happyaddons.com/elementor-testimonial-carousel-widget-demo/)** – The Testimonial Carousel widget will provide a great way to showcase your customers' recommendations. You can also control the carousel’s movement using flexible styles for your Website. We also have created amazing demos for the Testimonial Carousel widget.
355
+ * **[Logo Carousel](https://demo.happyaddons.com/elementor-logo-carousel-widget-demo/)** – Unleash your design creativity with this beautiful logo carousel widget and showcase your partners and products using vertical or horizontal motion. This Logo carousel widget will help you in many ways to showcase your client's logo or product logo within your website. Check the demo designs of the logo carousel widget.
356
+ * **[Animated Text](https://demo.happyaddons.com/elementor-animated-text-widget-demo/)** – This Animated text widget is useful for making your text stand apart from the crowd by applying smart animations to your website. You can customize the cool animation effects with various flexible styles of the Animated Text Widget. Try the demos of the Animated Text widget. Then buy Happy Addons for elementor.
357
+ * **[Timeline](https://demo.happyaddons.com/elementor-timeline-widget-demo/)**– Tell your story precisely and smartly using this gorgeous tool timeline widget. This timeline widget will help you achieve an amazing website design. Your visitors will get to know everything about the history of your product or company through a bird’s eye view if you use our timeline widget.
358
+ * **[Instagram Feed](https://demo.happyaddons.com/elementor-instagram-feed-widget-demo/)**– The Instagram feed widget will pave the way to seamlessly show you your beautiful Instagram photos on your website page. Users can interact with your photos and leave a comment. Usually, it’s tough to add an Instagram feed to any website. People used the smash balloon social feed plugin to add the Instagram feed to their website. The smash balloon is highly pricey for the simple task. But now, with the help of our Instagram feed widget, you can easily add your website. You don’t have to spend extra money on social feed plugins like smash balloon. This Instagram feed widget will help you to add the Instagram feed to your website without any third-party plugin and you can set the caching time of the feeds of your Instagram profile.
359
+ * **[Advanced Toggle](https://demo.happyaddons.com/elementor-advanced-toggle-widget-demo/)** – Similar to the Accordion widget, this Advanced Toggle widget will allow you to create a collapsible container area that will enable the user to show and hide items provided that the user clicks on it. We have created amazing demos for the advanced toggle widget. So check the demos from the Advanced Toggle widget and buy the Happy Addons for Elementor premium plan if you like it.
360
+ * **[List Group](https://demo.happyaddons.com/elementor-list-group-widget-demo/)** – With this incredibly handy list group widget, you can craft beautiful lists. You can also apply advanced styles to give the appearance of the items just like the way you want it with the list group widget. We have added demo designs for the List Group widget.
361
+ * **[Countdown](https://demo.happyaddons.com/elementor-countdown-widget-demo/)** – This countdown widget will let you set a countdown timer which you can use to show the launch time of your product to the customers to take a particular action showing the remaining time.
362
+ * **[Source Code](https://demo.happyaddons.com/elementor-source-code-widget-demo/)** – While writing docs or tutorial posts, you can use this widget to skillfully show codes to your visitors so that they can copy and paste them anywhere on the page at their disposal. Use the Source code widget to showcase your source codes in a lucrative way.
363
+ * **[Promo Box](https://demo.happyaddons.com/elementor-promo-box-widget-demo/)** – Promote anything more lucratively with the promo box widget. And stay ahead of the competition.
364
+ * **[Hot Spot](https://demo.happyaddons.com/elementor-hot-spot-widgets-demo/)** – Another power-packed widget that can help you create incredible Hot spot images or items. It’s a powerful hot spot widget rather than the default hot spot widget. Check the demos of the Hot Spot Widget.
365
+ * **[Price Menu](https://demo.happyaddons.com/elementor-price-menu-widget-demo/)** – Display your restaurant food menu list with or without price decently and creatively with this fully flexible widget price menu widget.
366
+ * **[Business Hour](https://demo.happyaddons.com/elementor-business-hour-widget-demo/)** – This business hour widget will help you show the business hours in a tabular form. Your customers will get to know when your business is open or closed.
367
+ * **[Line Chart](https://demo.happyaddons.com/elementor-line-chart-widget-demo/)**– Visualize your data in different ways; each can be animated and customizable with the line chart widget. Check the demo of the line chart widget.
368
+ * **[Pie & Doughnut Chart](https://demo.happyaddons.com/elementor-pie-doughnut-chart-widget-demo/)** – Pie & donut chart widget is to visualize your data in different ways; each of them animated and customizable, created by team Happy Addons for Elementor.
369
+ * **[Polar Area Chart](https://demo.happyaddons.com/elementor-polar-area-chart-widget-demo/)** – Polar Area chart widget is to Visualize your data in different ways; each is animated and customizable.
370
+ * **[Radar Chart](https://demo.happyaddons.com/elementor-radar-chart-widget-demo/)**– The radar chart widget is to visualize your data in different ways.
371
+ * **[Facebook Feed](https://demo.happyaddons.com/elementor-facebook-feed-widget-demo/)** – Show the feed of your Facebook page on your website differently and creatively through the Facebook feed widget.
372
+ * **[Twitter Feed Carousel](https://demo.happyaddons.com/elementor-twitter-feed-carousel-widget-demo/)** – Showcase your awesome team decorating in the Twitter feed mode applying various styles, texts, images, and social links with the help of the Twitter feed carousel widget.
373
+ * **[Breadcrumbs](https://demo.happyaddons.com/elementor-breadcrumb-widget-demo/)** – Visualize your breadcrumbs in different ways; with the help of the Bread Crumbs widget.
374
+ * **[Sticky Video](https://demo.happyaddons.com/elementor-sticky-video-widget-demo/)** – From now, you can set sticky videos with the sticky video widget. Also, you will get plenty of options to manage your videos in an advanced way with the help of the sticky video widget.
375
+ * **[Advanced Data table](https://demo.happyaddons.com/elementor-advanced-datatable-widget-demo/)** – Manage Your Table Data with Google Sheets, Table Press, Import from CSV, and Local Database with the help of the Advanced data table widget.
376
+ * **[Modal Popup](https://demo.happyaddons.com/elementor-modal-popup-widget-demo/)** – Create click-triggered Popups to grab and collect various information from the visitors with the help of the Modal popup widget.
377
+ * **[Single Image Scroll](https://demo.happyaddons.com/single-image-scroll-widget-demo/)** – Facing difficulties while presenting long images like web page screenshots, panorama shots, etc, to your portfolios? From now on, you can showcase long images by using the Single Image Scroll widget.
378
+ * **[Post Grid](https://demo.happyaddons.com/elementor-post-grid-widget-demo/)**– Scale your blog archive page with the Post Grid widget. It comes with predefined skins, so you spend less time designing your blog page.
379
+ * **[Post Tiles](https://demo.happyaddons.com/elementor-post-tiles-widget-demo/)** – Now, you can showcase your most desirable blog posts exclusively with the Post Tiles widget of Happy Addons for Elementor. It’s available with predefined tiles set to achieve an elegant look.
380
+ * **[Smart Post List](https://demo.happyaddons.com/elementor-smart-post-list-widget-demo/)** – Are you looking for a magnificent listing facility with the highlighted option for your sticky featured article? This Smart Post list widget will handle all of your desirable styles smartly, like featuring the sticky post, filterable post list, and more.
381
+ * **[Post Carousel](https://demo.happyaddons.com/elementor-post-carousel-widget-demo/)** – The Post carousel feature is now trendy in News Portals or other blogging sites to grab visitors’ attention. Now you can create a stunning post carousel for your site with the Post Carousel widget.
382
+ * **[Author List](https://demo.happyaddons.com/elementor-author-list-widget-demo/)** – Decently showcase your creative writers with the Author List widget. It will help you to display all of your authors in one place.
383
+ * **[WooCommerce Product Grid](https://demo.happyaddons.com/elementor-product-grid-widget-demo/)** – Are you struggling with showcasing your WooCommerce products in perfect grid alignment within WooCommerce? From now, you can display your products in grid views lucratively with the Product Grid Widget.
384
+ * **[WooCommerce Product Carousel](https://demo.happyaddons.com/elementor-product-carousel-widget-demo/)** – Wondering about a perfect WooCommerce Product Carousel widget to grab the attention of your customers? Try Happy Addons for Elementor Pro’s Product Carousel Widget to make it happen.
385
+ * **[WooCommerce Product Category Grid](https://demo.happyaddons.com/elementor-product-category-grid-widget-demo/)** – Sometimes, you need to display your WooCommerce eCommerce products category-wise to target a specific genre of visitors. Our Product Category Grid Widget is the best fit for displaying WooCommerce Products category-wise.
386
+ * **[WooCommerce Product Category Carousel](https://demo.happyaddons.com/elementor-product-category-carousel-widget-demo/)** – From now on, you can display WooCommerce products based on specific categories with the help of the Product Category Carousel Widget to make them more lucrative.
387
+ * **[WooCommerce Single Product](https://demo.happyaddons.com/elementor-single-product-demo/)** – Are you looking for a design element to design your single WooCommerce products in various designs within your website? No worries, our Single WooCommerce Product Widget will fulfill your desired goal. Check out the demos.
388
+ * **[WooCommerce Mini Cart](https://demo.happyaddons.com/elementor-mini-cart-widget-demo/)** – Want to increase your WooCommerce/eCommerce store’s customer experience? Use the mini cart widget to boost your conversion rate swiftly.
389
+ * **[Advanced Google Map Widget ](https://demo.happyaddons.com/elementor-google-map-widget-demo/)**– Are you looking to add a map to your website but not the traditional google map? You can achieve that quickly if you use our Advanced Google Map widget. You can customize your Google Map Widget based on your theme color. Also, in the Advance Google Map Widget, you can add your custom label, map marker, legend, and more. \
390
+ We also bring the Snazzy Map styling within Advanced Google Map Widget. We have added four built-in styles and also added support for custom JSON input from the official Snazzy Map. So, you can now design your Google Map according to your theme.
391
+ * **[EDD Single Product Widget](https://demo.happyaddons.com/elementor-edd-single-product-widget-demo/)** – If you want to add a single product as your featured item on your website is tough for nontechies as there is no integration for Easy Digital Downloads and Elementor. Don’t worry; team Happy Addons comes with seamless integration of EDD for Elementor. You can easily add any product of your EDD store as your featured product at any place on your website by using the Easy Digital Downloads Single product widget. You can add two images on the EDD single product widget to make an eye-catchy effect to grab your visitors’ attention. Try EDD single-product widget. \
392
+ **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-single-product/)** & **[Video](https://www.youtube.com/watch?v=ytRb7WHq2v0&ab_channel=HappyAddons)** Tutorial for Easy Digital Downloads Single Product Widget.
393
+ * **[EDD Product Grid Widget](https://demo.happyaddons.com/elementor-edd-product-grid-widget-demo/)** – Wondering to showcase multiple products of your EDD stores! Showcasing products in a grid style is the best possible way to display multiple products on an eCommerce site. Herewith the help of the EDD product grid widget, you can achieve that easily. You don’t have to do extra work to showcase your EDD store’s products in a grid style, just need to drag the EDD product grid widget, and then you can easily customize it. \
394
+ **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-product-grid/)** and **[Video](https://www.youtube.com/watch?v=HJxVFK9TFoA&ab_channel=HappyAddons)** tutorial for EDD Product Grid widget.
395
+ * **[EDD Product Carousel Widget](https://demo.happyaddons.com/elementor-edd-product-carousel-widget-demo/)** – You can show multiple products or items in a row in the carousel style. And by default, creating carousels for EDD products is tough as there are no default EDD widgets. But we bring the Product Carousel widgets for Elementor Page builder. So now you can create amazing product carousels for your Easy Digital Downloads store. Try EDD Product Carousel to create lucrative product carousels for EDD products. \
396
+ Check **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-product-carousel/)** and **[Video](https://youtu.be/4P_FZiC8MXM)** Documentation for the EDD product carousel Widget.
397
+ * **[EDD Category Grid Widget](https://demo.happyaddons.com/elementor-edd-category-grid-widget-demo/)** – Sometimes, we need to add product categories to our stores to navigate the visitors to specific areas. By default, it’s difficult for regular users to add Easy Digital Downloads product categories as there is no default integration with Elementor Page Builder with EDD. But if you use Happy Addons for Elementor, you will get the opportunity to design your EDD stores’ all categories in a grid style. Also, you will have a full-fledged customization facility in the EDD category grid widget. \
398
+ Here are the **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-category-grid/)** and **[Video](https://www.youtube.com/watch?v=OVJAyajsOqc&ab_channel=HappyAddons)** Documentation for the EDD category grid widget.
399
+ * **[EDD Category Carousel Elementor Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-category-carousel/)** – If you are wondering about adding EDD product carousels within Elementor, it will be impossible as there is no default support of Elementor for the Easy Digital Download plugin. But if you use Happy Addons for Elementor, you can add category carousels for your EDD stores. Using the EDD category carousel widget, you can create a lucrative category carousel for your EDD stores. \
400
+ Check **[Doc](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-category-carousel/)** and **[Video](https://www.youtube.com/watch?v=-CgXyA-g9q0&feature=youtu.be&ab_channel=HappyAddons)** Documentation for EDD Category Carousel Widget.
401
+ * **[EDD Cart Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-cart/)** – If you are using Easy Digital Downloads to manage your sale now, you can design your EDD cart page using EDD Cart Widget.
402
+ * **[EDD Checkout Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-checkout/)** – Manage your Easy Digital Downloads Checkout pages by using EDD Checkout Widget. A limitless customization facility has been added to this EDD checkout widget.
403
+ * **[EDD login Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-login/)** – You can customize your EDD store’s login page by using Easy Digital Download Login Widget.
404
+ * **[EDD Registration Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-register/)** – EDD Registration Widget allows you to customize the registration form of the Easy Digital Downloads. You can manage it from your Editing Panel.
405
+ * **[EDD Purchase WIdget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-purchase/)** – EDD purchase widget gives you the flexibility to stylize your Easy Digital Download store’s purchase page within Elementor.
406
+ * **[EDD Download Widget](https://happyaddons.com/docs/happy-addons-for-elementor-pro/edd-widgets-features/edd-download/)** – If you want to customize your EDD store’s download page with Elementor, then use EDD Download Widget.
407
+ * **[Image Swap Widget](https://demo.happyaddons.com/elementor-image-swap-widget-demo/)** – If you are looking for an Elementor Widget which can help you to alter the lower image to the top without any hassle, then you can use Image Swap Widget. It will help you to create an actionable section for your users on your Website.
408
+
409
+
410
+ ### **Unique Pro Features Of Happy Addons for Elementor To Watch Out For**
411
+
412
+ The premium (PRO) features of Happy Addons truly make it stand out from all the other Elementor add-ons out there right now. You will get the below-mentioned standout premium features in the PRO version of Happy Addons:
413
+
414
+
415
+
416
+ * **Happy Mega Menu Builder For Elementor:** Happy Addons brings an amazing mega menu builder for Elementor. With this MegaMenu builder, you can create mega menus like Dribble, Adidas, Puma, weDevs, and more. Our Happy Menu widget will help you show any kind of element to your mega menu items. Like you can show posts, categories, pages, list items, social links, menu icons, and more. Not only that but also you will get a blank canvas to design your mega menu items. \
417
+
418
+ What Extra Will You Get in the Mega Menu Builder of Happy Addons for Elementor?
419
+
420
+ With this Happy mega menu builder widget, you can create any kind of menus.
421
+ * Simple Navigation Menu: You can create a simple nav menu for your site. You can show and design your WordPress Nav menu items as well.
422
+ * Icon for menu items or mega menu items: Flexibility to add different types of icons to menu items.
423
+ * Menu Badges for Mega Menu or Simple Nav Menus: Create a customized badge for your megamenu or simple menu items.
424
+ * Mobile Responsive Mega Menus: You can create mobile responsive menus, as it has different styling options for mobiles and tablets.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
425
 
426
  Want to learn How to Create a MegaMenu for Elementor? Watch this detailed tutorial of creating mega menus within Elementor,
427
 
428
  [youtube https://www.youtube.com/watch?v=7qmCZFsDkmg&ab_channel=HappyAddons]
429
 
430
 
431
+ * **Cross-Domain Copy-Paste:** Apply The Same Design To Multiple Domains With A Single Click:
 
 
 
 
 
 
432
 
433
+ If you are creating different web pages with WordPress, you will often try to use the same elements of a web page to other pages over and over again. To address this issue, the Elementor page builder comes with a free copy and paste elements feature for a single domain. But the problem is you can not copy and paste an element to other domains.
434
+ This is where the goodness of the Happy Addons comes to the rescue! With this tool, you can copy and paste any element (for example, buttons, navigation bars, carousel, accordion, etc.) from one domain to another domain. Cool, right? Don’t miss out on the chance to scale up your working efficiency with the help of a cross-domain copy-paste extension. We are the inventor of the cross-domain copy-paste feature in the elementor ecosystem. \
435
  [Check Demo](https://demo.happyaddons.com/cross-domain-copy-paste/)
436
 
437
+ * **Preset:** Save Your Time And Effort By Using The Preset Feature:
438
+ If you try to create your website from scratch and give it a professional appearance, then it will take up a huge amount of time and effort.
439
+ To tackle this hassle, the Preset option comes into play! Much like its name, it will let you select pre-made designs to create a web page faster and of course, without compromising the quality. There are 400+ elementor preset designs available in Happy Addons. We are the inventor of the preset feature in the elementor ecosystem. \
 
 
 
 
440
  [Check Demo](https://demo.happyaddons.com/presets-demo/)
441
 
442
+ * **Unlimited Section Nesting:** Use Unlimited Section Nesting To Go Beyond The Limit** With Elementor, you can create sections to make room for elements. We feel happy to say that by integrating the Happy Addons, you can create infinite sections within a single section.
443
 
444
+ And as usual, you can insert as many widgets as you want into those sections. We are the inventor of the unlimited section nesting feature in the elementor ecosystem.
 
 
 
 
 
445
  [Check demo](https://demo.happyaddons.com/unlimited-section-nesting/)
446
 
447
+ * **Live Copy:** Copy Designs From Demo Sites To Get It Done Right Away!
 
 
448
  Sometimes you may wish to simulate exactly the same design that you see on our demo page. Amazingly, with the Live Copy option, you can do it at your disposal.
449
 
450
+ This is a go-to way that lets you copy the code of the demo design from the demo site and allows you to use it directly on your edit panel.
 
 
451
 
452
+ Unlike a theme template, using the demo designs won’t put any pressure on your media server which is a must-have to help load the page faster. We are the inventor of the live copy demo design feature in the elementor ecosystem.
453
  [Check Demo](https://demo.happyaddons.com/live-copy/)
454
 
455
+ * **Image Masking:** Mask Your Images Within Your Elementor Editing Panel!
456
+ Sometimes, a square or circular-shaped image is not enough to create a good design in elementor. You might need different types of creative and unusual image shapes. We are introducing custom-shaped images to bring a creative touch to your design. Now you will be able to convert your square image into lovely custom shapes. No hassles, just upload your image and choose your shape. Boom! Just done. Very Easy. We are the inventor of the image masking feature in the elementor ecosystem.
 
 
 
457
  [Check Demo](https://happyaddons.com/image-masking-demo/)
 
458
  [youtube https://www.youtube.com/watch?v=0U3wq3oxy2k&t=2s&ab_channel=HappyAddons]
459
 
460
+ * **Happy Particle Effect:** Add Exclusive Background Particle Effects To Your Website!
461
+ We have added three predefined particle effects, which are commonly used, Polygon, NASA, and Snow. But you have plenty of options for adding as much as your need with our custom Particle adding option. Moreover, you can customize them at your desired level. You can set the number of Particles, the size of your particles, the speed of the Particle movements, and the flexibility to add Hover Effect to your Particle effects. Try our particle effects.
 
 
 
462
  [Check Demo](https://demo.happyaddons.com/happy-particle-demo/)
463
 
464
  [youtube https://www.youtube.com/watch?v=iD83Sr4pFSw&ab_channel=HappyAddons]
465
 
466
 
467
+ * **Display Condition:** Show, Hide, And Schedule Content To Display On Your Site According To Your Need!
468
+ This feature will help you to display your content depending on different kinds of conditions like Browser, Operating System, Date Range, Time, and many more. We are the inventor of the Conditional display or display condition feature in the elementor ecosystem.
 
 
469
  [Check Demo](https://happyaddons.com/display-condition/)
 
470
  [youtube https://www.youtube.com/watch?v=kiGj1ZyX6T4&ab_channel=HappyAddons]
471
 
472
 
473
+ ### **Enjoy Extra Benefits From Happy Addons for Elementor!**
474
 
475
+ Our code doesn’t stink, and we don’t leave you blindfolded when you need support from us. Apart from the freemium widgets, the plugin will pamper you with a fleet of professional quality features.
476
 
477
  For example, it’s compatible with almost every WordPress theme; it’s lightweight and fast; comes up with motion effects, and empowers you with enormous customizability options. In addition, the plugin also works cohesively with the stock Elementor widgets.
478
 
479
+ If you don’t understand a feature or fail to give it the desired look, which was already demonstrated in a demo, or it’s not working as expected – we got your back. Just drop us a line, and we will do our best to help you figure a way out.
480
 
481
 
482
+ ### **Bugs, Technical Hints, Or Contribute**
483
 
484
  Please provide us with constructive feedback, contribute, and file any technical bugs on [GitHub Repository](https://github.com/weDevsOfficial/happy-elementor-addons/issues).
485
 
 
486
 
487
+ ### Stay connected with the Happy Addons for Elementor Community
488
+
489
+ In case you want to share any thoughts on Happy Addons with other users or if you are in any trouble related to your web design work, don’t feel stranded. Stay connected with [the Happy addons community](https://www.facebook.com/groups/HappyAddonsCommunity/).
490
 
491
 
492
+ ### **Privacy Policy**
493
 
494
  **Happy Addons for Elementor** uses [Appsero](https://appsero.com/) SDK to collect some telemetry data upon the user’s confirmation. This helps us to troubleshoot problems faster & make product improvements.
495
 
500
  Learn more about how [Appsero collects and uses this data](https://appsero.com/privacy-policy/). Additionally, read the weDevs [privacy policy](https://wedevs.com/privacy-policy/) for better knowledge on it.
501
 
502
 
503
+ ### **Missing Something In The Happy Addons for Elementor?**
504
 
505
+ If you are still finding some of the missing pieces in the Happy Addons for Elementor Widget Library and want to share them with us, then here is our public roadmap for you. You can submit your ideas and upvote other submitted ideas. And we will bring the elementor features and widgets based on the upvotes in the public roadmap.
506
 
507
  [Submit your ideas here.](https://happyaddons.com/roadmaps/#ideas)
508
 
509
 
510
+ ### **Happy With Our Work?**
511
 
512
  We are really thankful to you that you have chosen our plugin. If our plugin brings a smile to your face while working, please share your happiness by giving us a 5***** rating in WordPress Org. It will make us happy and won’t take more than 2 mins.
513
 
514
+ [I’m Happy to Give You 5](https://wordpress.org/support/plugin/happy-elementor-addons/reviews/?filter=5)
515
 
516
 
517
+ ### **About The Maker**
518
 
519
+ Despite Happy Addons for Elementor being the newest addition to the product lineup of [weDevs](https://wedevs.com/), it has already managed to win the hearts of its users with a staggering 5-star rating. The plugin is programmed in a way so you don’t require any prior coding know-how and is completely cross-browser compatible with mobile responsive features.
520
 
521
 
522
  == Frequently Asked Questions ==
574
 
575
  == Changelog ==
576
 
577
+ = 3.7.2 - 20 November 2022 =
578
+
579
+ - Fix: Equal Height is not working on Tablet.
580
+ - Fix: Pricing Table's Feature title is not working with <br> tag.
581
+ - Fix: The Post Tab widget is showing all posts on the page load.
582
+ - Fix: The News Ticker widget display only 5 posts.
583
+
584
  = 3.7.1 - 18 October 2022 =
585
 
586
  - Tweak: Scroll To Top feature enhancements like customize the icon, text, and image, and enable or disable the feature for different devices. Plus, we've fixed the page refresh issue when making changes to the settings
596
  - Fix: Threesixty rotation & Taxonomy List are not working as a template.
597
  - Fix: Post list excerpt not showing.
598
 
 
 
 
 
 
 
 
 
 
 
599
  = 3.7.0 - 30 August 2022 =
600
 
601
  - New: Scroll To Top - Feature
widgets/news-ticker/widget.php CHANGED
@@ -480,6 +480,7 @@ class News_Ticker extends Base {
480
  'post_status' => 'publish',
481
  'ignore_sticky_posts' => 1,
482
  'post__in' => (array) $settings['selected_posts'],
 
483
  'suppress_filters' => false,
484
  ];
485
 
480
  'post_status' => 'publish',
481
  'ignore_sticky_posts' => 1,
482
  'post__in' => (array) $settings['selected_posts'],
483
+ 'posts_per_page' => -1,
484
  'suppress_filters' => false,
485
  ];
486
 
widgets/post-tab/widget.php CHANGED
@@ -957,10 +957,12 @@ class Post_Tab extends Base {
957
  $args['order'] = $settings['posts_order'] ? $settings['posts_order'] : 'DESC';
958
 
959
  $args['tax_query'] = [
960
- 'taxonomy' => $taxonomy,
961
- 'field' => 'term_id',
962
- // 'terms' => $terms_ids ? $filter_list[0]->term_id : '',
963
- 'terms' => isset( $filter_list[0]->term_id ) ? $filter_list[0]->term_id : '',
 
 
964
  ];
965
 
966
  //define ha post tab custom query filter hook
957
  $args['order'] = $settings['posts_order'] ? $settings['posts_order'] : 'DESC';
958
 
959
  $args['tax_query'] = [
960
+ [
961
+ 'taxonomy' => $taxonomy,
962
+ 'field' => 'term_id',
963
+ // 'terms' => $terms_ids ? $filter_list[0]->term_id : '',
964
+ 'terms' => isset( $filter_list[0]->term_id ) ? $filter_list[0]->term_id : '',
965
+ ],
966
  ];
967
 
968
  //define ha post tab custom query filter hook
widgets/pricing-table/widget.php CHANGED
@@ -18,41 +18,41 @@ defined( 'ABSPATH' ) || die();
18
 
19
  class Pricing_Table extends Base {
20
 
21
- /**
22
- * Get widget title.
23
- *
24
- * @since 1.0.0
25
- * @access public
26
- *
27
- * @return string Widget title.
28
- */
29
- public function get_title() {
30
- return __( 'Pricing Table', 'happy-elementor-addons' );
31
- }
32
 
33
  public function get_custom_help_url() {
34
  return 'https://happyaddons.com/docs/happy-addons-for-elementor/widgets/pricing-table/';
35
  }
36
 
37
- /**
38
- * Get widget icon.
39
- *
40
- * @since 1.0.0
41
- * @access public
42
- *
43
- * @return string Widget icon.
44
- */
45
- public function get_icon() {
46
- return 'hm hm-file-cabinet';
47
- }
48
-
49
- public function get_keywords() {
50
- return [ 'pricing', 'price', 'table', 'package', 'product', 'plan' ];
51
- }
52
 
53
  /**
54
- * Register widget content controls
55
- */
56
  protected function register_content_controls() {
57
  $this->__header_content_controls();
58
  $this->__price_content_controls();
@@ -67,22 +67,22 @@ class Pricing_Table extends Base {
67
  '_section_header',
68
  [
69
  'label' => __( 'Header', 'happy-elementor-addons' ),
70
- 'tab' => Controls_Manager::TAB_CONTENT,
71
  ]
72
  );
73
 
74
- $this->add_control(
75
- 'title',
76
- [
77
- 'label' => __( 'Title', 'happy-elementor-addons' ),
78
- 'type' => Controls_Manager::TEXT,
79
- 'label_block' => true,
80
- 'default' => __( 'Basic', 'happy-elementor-addons' ),
81
- 'dynamic' => [
82
- 'active' => true
83
- ]
84
- ]
85
- );
86
 
87
  $this->add_control(
88
  'title_tag',
@@ -120,114 +120,114 @@ class Pricing_Table extends Base {
120
  ]
121
  );
122
 
123
- $this->end_controls_section();
124
  }
125
 
126
  protected function __price_content_controls() {
127
 
128
- $this->start_controls_section(
129
- '_section_pricing',
130
- [
131
- 'label' => __( 'Pricing', 'happy-elementor-addons' ),
132
- 'tab' => Controls_Manager::TAB_CONTENT,
133
- ]
134
- );
135
-
136
- $this->add_control(
137
- 'currency',
138
- [
139
- 'label' => __( 'Currency', 'happy-elementor-addons' ),
140
- 'type' => Controls_Manager::SELECT,
141
- 'label_block' => false,
142
- 'options' => [
143
- '' => __( 'None', 'happy-elementor-addons' ),
144
- 'baht' => '&#3647; ' . _x( 'Baht', 'Currency Symbol', 'happy-elementor-addons' ),
145
- 'bdt' => '&#2547; ' . _x( 'BD Taka', 'Currency Symbol', 'happy-elementor-addons' ),
146
- 'dollar' => '&#36; ' . _x( 'Dollar', 'Currency Symbol', 'happy-elementor-addons' ),
147
- 'euro' => '&#128; ' . _x( 'Euro', 'Currency Symbol', 'happy-elementor-addons' ),
148
- 'franc' => '&#8355; ' . _x( 'Franc', 'Currency Symbol', 'happy-elementor-addons' ),
149
- 'guilder' => '&fnof; ' . _x( 'Guilder', 'Currency Symbol', 'happy-elementor-addons' ),
150
- 'krona' => 'kr ' . _x( 'Krona', 'Currency Symbol', 'happy-elementor-addons' ),
151
- 'lira' => '&#8356; ' . _x( 'Lira', 'Currency Symbol', 'happy-elementor-addons' ),
152
- 'peseta' => '&#8359 ' . _x( 'Peseta', 'Currency Symbol', 'happy-elementor-addons' ),
153
- 'peso' => '&#8369; ' . _x( 'Peso', 'Currency Symbol', 'happy-elementor-addons' ),
154
- 'pound' => '&#163; ' . _x( 'Pound Sterling', 'Currency Symbol', 'happy-elementor-addons' ),
155
- 'real' => 'R$ ' . _x( 'Real', 'Currency Symbol', 'happy-elementor-addons' ),
156
- 'ruble' => '&#8381; ' . _x( 'Ruble', 'Currency Symbol', 'happy-elementor-addons' ),
157
- 'rupee' => '&#8360; ' . _x( 'Rupee', 'Currency Symbol', 'happy-elementor-addons' ),
158
- 'indian_rupee' => '&#8377; ' . _x( 'Rupee (Indian)', 'Currency Symbol', 'happy-elementor-addons' ),
159
- 'shekel' => '&#8362; ' . _x( 'Shekel', 'Currency Symbol', 'happy-elementor-addons' ),
160
- 'won' => '&#8361; ' . _x( 'Won', 'Currency Symbol', 'happy-elementor-addons' ),
161
- 'yen' => '&#165; ' . _x( 'Yen/Yuan', 'Currency Symbol', 'happy-elementor-addons' ),
162
- 'custom' => __( 'Custom', 'happy-elementor-addons' ),
163
- ],
164
- 'default' => 'dollar',
165
- ]
166
- );
167
-
168
- $this->add_control(
169
- 'currency_custom',
170
- [
171
- 'label' => __( 'Custom Symbol', 'happy-elementor-addons' ),
172
- 'type' => Controls_Manager::TEXT,
173
- 'condition' => [
174
- 'currency' => 'custom',
175
- ],
176
- 'dynamic' => [
177
- 'active' => true,
178
- ]
179
- ]
180
- );
181
-
182
- $this->add_control(
183
- 'price',
184
- [
185
- 'label' => __( 'Price', 'happy-elementor-addons' ),
186
- 'type' => Controls_Manager::TEXT,
187
- 'default' => '9.99',
188
- 'dynamic' => [
189
- 'active' => true
190
- ]
191
- ]
192
- );
193
-
194
- $this->add_control(
195
- 'period',
196
- [
197
- 'label' => __( 'Period', 'happy-elementor-addons' ),
198
- 'type' => Controls_Manager::TEXT,
199
- 'default' => __( 'Per Month', 'happy-elementor-addons' ),
200
- 'dynamic' => [
201
- 'active' => true
202
- ]
203
- ]
204
- );
205
-
206
- $this->end_controls_section();
207
  }
208
 
209
  protected function __features_content_controls() {
210
 
211
- $this->start_controls_section(
212
- '_section_features',
213
- [
214
- 'label' => __( 'Features', 'happy-elementor-addons' ),
215
- ]
216
- );
217
-
218
- $this->add_control(
219
- 'features_title',
220
- [
221
- 'label' => __( 'Title', 'happy-elementor-addons' ),
222
- 'type' => Controls_Manager::TEXT,
223
- 'default' => __( 'Features', 'happy-elementor-addons' ),
224
- 'separator' => 'after',
225
- 'label_block' => true,
226
- 'dynamic' => [
227
- 'active' => true
228
- ]
229
- ]
230
- );
231
 
232
  $this->add_control(
233
  'features_title_tag',
@@ -270,181 +270,181 @@ class Pricing_Table extends Base {
270
  $repeater->add_control(
271
  'text',
272
  [
273
- 'label' => __( 'Text', 'happy-elementor-addons' ),
274
- 'type' => Controls_Manager::TEXTAREA,
275
  'default' => __( 'Exciting Feature', 'happy-elementor-addons' ),
276
  'dynamic' => [
277
- 'active' => true
278
- ]
279
  ]
280
  );
281
 
282
  $repeater->add_control(
283
  'selected_icon',
284
  [
285
- 'label' => __( 'Icon', 'happy-elementor-addons' ),
286
- 'type' => Controls_Manager::ICONS,
287
  'fa4compatibility' => 'icon',
288
- 'default' => [
289
- 'value' => 'fas fa-check',
290
  'library' => 'fa-solid',
291
  ],
292
- 'recommended' => [
293
  'fa-regular' => [
294
  'check-square',
295
  'window-close',
296
  ],
297
- 'fa-solid' => [
298
  'check',
299
- ]
300
- ]
301
- ]
302
- );
303
-
304
- $this->add_control(
305
- 'features_list',
306
- [
307
- 'type' => Controls_Manager::REPEATER,
308
- 'fields' => $repeater->get_controls(),
309
- 'show_label' => false,
310
- 'default' => [
311
- [
312
- 'text' => __( 'Standard Feature', 'happy-elementor-addons' ),
313
- 'icon' => 'fa fa-check',
314
- ],
315
- [
316
- 'text' => __( 'Another Great Feature', 'happy-elementor-addons' ),
317
- 'icon' => 'fa fa-check',
318
- ],
319
- [
320
- 'text' => __( 'Obsolete Feature', 'happy-elementor-addons' ),
321
- 'icon' => 'fa fa-close',
322
- ],
323
- [
324
- 'text' => __( 'Exciting Feature', 'happy-elementor-addons' ),
325
- 'icon' => 'fa fa-check',
326
- ],
327
- ],
328
- 'title_field' => '<# print(haGetFeatureLabel(text)); #>',
329
- ]
330
- );
331
-
332
- $this->end_controls_section();
333
  }
334
 
335
  protected function __footer_content_controls() {
336
 
337
- $this->start_controls_section(
338
- '_section_footer',
339
- [
340
- 'label' => __( 'Footer', 'happy-elementor-addons' ),
341
- 'tab' => Controls_Manager::TAB_CONTENT,
342
- ]
343
- );
344
-
345
- $this->add_control(
346
- 'button_text',
347
- [
348
- 'label' => __( 'Button Text', 'happy-elementor-addons' ),
349
- 'type' => Controls_Manager::TEXT,
350
- 'default' => __( 'Subscribe', 'happy-elementor-addons' ),
351
- 'placeholder' => __( 'Type button text here', 'happy-elementor-addons' ),
352
- 'label_block' => true,
353
- 'dynamic' => [
354
- 'active' => true
355
- ]
356
- ]
357
- );
358
-
359
- $this->add_control(
360
- 'button_link',
361
- [
362
- 'label' => __( 'Link', 'happy-elementor-addons' ),
363
- 'type' => Controls_Manager::URL,
364
- 'label_block' => true,
365
- 'placeholder' => 'https://example.com',
366
- 'dynamic' => [
367
- 'active' => true,
 
 
 
368
  ],
369
- 'default' => [
370
- 'url' => '#'
371
- ]
372
- ]
373
- );
374
 
375
- $this->end_controls_section();
376
  }
377
 
378
  protected function __badge_content_controls() {
379
 
380
- $this->start_controls_section(
381
- '_section_badge',
382
- [
383
- 'label' => __( 'Badge', 'happy-elementor-addons' ),
384
- ]
385
- );
386
-
387
- $this->add_control(
388
- 'show_badge',
389
- [
390
- 'label' => __( 'Show', 'happy-elementor-addons' ),
391
- 'type' => Controls_Manager::SWITCHER,
392
- 'label_on' => __( 'Show', 'happy-elementor-addons' ),
393
- 'label_off' => __( 'Hide', 'happy-elementor-addons' ),
394
- 'return_value' => 'yes',
395
- 'default' => 'yes',
396
- 'style_transfer' => true,
397
- ]
398
- );
399
-
400
- $this->add_control(
401
- 'badge_position',
402
- [
403
- 'label' => __( 'Position', 'happy-elementor-addons' ),
404
- 'type' => Controls_Manager::CHOOSE,
405
- 'label_block' => false,
406
- 'options' => [
407
- 'left' => [
408
- 'title' => __( 'Left', 'happy-elementor-addons' ),
409
- 'icon' => 'eicon-h-align-left',
410
- ],
411
- 'right' => [
412
- 'title' => __( 'Right', 'happy-elementor-addons' ),
413
- 'icon' => 'eicon-h-align-right',
414
- ],
415
- ],
416
- 'toggle' => false,
417
- 'default' => 'left',
418
- 'style_transfer' => true,
419
- 'condition' => [
420
- 'show_badge' => 'yes'
421
- ]
422
- ]
423
- );
424
-
425
- $this->add_control(
426
- 'badge_text',
427
- [
428
- 'label' => __( 'Badge Text', 'happy-elementor-addons' ),
429
- 'type' => Controls_Manager::TEXT,
430
- 'default' => __( 'Recommended', 'happy-elementor-addons' ),
431
- 'placeholder' => __( 'Type badge text', 'happy-elementor-addons' ),
432
- 'condition' => [
433
- 'show_badge' => 'yes'
434
- ],
435
- 'dynamic' => [
436
- 'active' => true
437
- ]
438
- ]
439
- );
440
-
441
- $this->end_controls_section();
442
- }
443
 
444
  /**
445
- * Register widget style controls
446
- */
447
- protected function register_style_controls() {
448
  $this->__general_style_controls();
449
  $this->__header_style_controls();
450
  $this->__price_style_controls();
@@ -453,687 +453,687 @@ class Pricing_Table extends Base {
453
  $this->__badge_style_controls();
454
  }
455
 
456
- protected function __general_style_controls() {
457
-
458
- $this->start_controls_section(
459
- '_section_style_general',
460
- [
461
- 'label' => __( 'General', 'happy-elementor-addons' ),
462
- 'tab' => Controls_Manager::TAB_STYLE,
463
- ]
464
- );
465
-
466
- $this->add_control(
467
- 'text_color',
468
- [
469
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
470
- 'type' => Controls_Manager::COLOR,
471
- 'selectors' => [
472
- '{{WRAPPER}} .ha-pricing-table-title,'
473
- . '{{WRAPPER}} .ha-pricing-table-currency,'
474
- . '{{WRAPPER}} .ha-pricing-table-period,'
475
- . '{{WRAPPER}} .ha-pricing-table-features-title,'
476
- . '{{WRAPPER}} .ha-pricing-table-features-list li,'
477
- . '{{WRAPPER}} .ha-pricing-table-price-text' => 'color: {{VALUE}};',
478
- ],
479
- ]
480
- );
481
-
482
- $this->end_controls_section();
483
  }
484
 
485
- protected function __header_style_controls() {
486
-
487
- $this->start_controls_section(
488
- '_section_style_header',
489
- [
490
- 'label' => __( 'Header', 'happy-elementor-addons' ),
491
- 'tab' => Controls_Manager::TAB_STYLE,
492
- ]
493
- );
494
-
495
- $this->add_responsive_control(
496
- 'title_spacing',
497
- [
498
- 'label' => __( 'Bottom Spacing', 'happy-elementor-addons' ),
499
- 'type' => Controls_Manager::SLIDER,
500
- 'size_units' => ['px'],
501
- 'selectors' => [
502
- '{{WRAPPER}} .ha-pricing-table-title' => 'margin-bottom: {{SIZE}}{{UNIT}};',
503
- ],
504
- ]
505
- );
506
-
507
- $this->add_control(
508
- 'title_color',
509
- [
510
- 'label' => __( 'Title Color', 'happy-elementor-addons' ),
511
- 'type' => Controls_Manager::COLOR,
512
- 'selectors' => [
513
- '{{WRAPPER}} .ha-pricing-table-title' => 'color: {{VALUE}};',
514
- ],
515
- ]
516
- );
517
-
518
- $this->add_group_control(
519
- Group_Control_Typography::get_type(),
520
- [
521
- 'name' => 'title_typography',
522
- 'selector' => '{{WRAPPER}} .ha-pricing-table-title',
523
- 'scheme' => Typography::TYPOGRAPHY_2,
524
- ]
525
- );
526
-
527
- $this->add_group_control(
528
- Group_Control_Text_Shadow::get_type(),
529
- [
530
- 'name' => 'title_text_shadow',
531
- 'selector' => '{{WRAPPER}} .ha-pricing-table-title',
532
- ]
533
- );
534
-
535
- $this->end_controls_section();
536
  }
537
 
538
- protected function __price_style_controls() {
539
-
540
- $this->start_controls_section(
541
- '_section_style_pricing',
542
- [
543
- 'label' => __( 'Pricing', 'happy-elementor-addons' ),
544
- 'tab' => Controls_Manager::TAB_STYLE,
545
- ]
546
- );
547
-
548
- $this->add_control(
549
- '_heading_price',
550
- [
551
- 'type' => Controls_Manager::HEADING,
552
- 'label' => __( 'Price', 'happy-elementor-addons' ),
553
- ]
554
- );
555
-
556
- $this->add_responsive_control(
557
- 'price_spacing',
558
- [
559
- 'label' => __( 'Bottom Spacing', 'happy-elementor-addons' ),
560
- 'type' => Controls_Manager::SLIDER,
561
- 'size_units' => ['px'],
562
- 'selectors' => [
563
- '{{WRAPPER}} .ha-pricing-table-price-tag' => 'margin-bottom: {{SIZE}}{{UNIT}};',
564
- ],
565
- ]
566
- );
567
-
568
- $this->add_control(
569
- 'price_color',
570
- [
571
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
572
- 'type' => Controls_Manager::COLOR,
573
- 'selectors' => [
574
- '{{WRAPPER}} .ha-pricing-table-price-text' => 'color: {{VALUE}};',
575
- ],
576
- ]
577
- );
578
-
579
- $this->add_group_control(
580
- Group_Control_Typography::get_type(),
581
- [
582
- 'name' => 'price_typography',
583
- 'selector' => '{{WRAPPER}} .ha-pricing-table-price-text',
584
- 'scheme' => Typography::TYPOGRAPHY_3,
585
- ]
586
- );
587
-
588
- $this->add_control(
589
- '_heading_currency',
590
- [
591
- 'type' => Controls_Manager::HEADING,
592
- 'label' => __( 'Currency', 'happy-elementor-addons' ),
593
- 'separator' => 'before',
594
- ]
595
- );
596
-
597
- $this->add_responsive_control(
598
- 'currency_spacing',
599
- [
600
- 'label' => __( 'Side Spacing', 'happy-elementor-addons' ),
601
- 'type' => Controls_Manager::SLIDER,
602
- 'size_units' => ['px'],
603
- 'selectors' => [
604
- '{{WRAPPER}} .ha-pricing-table-currency' => 'margin-right: {{SIZE}}{{UNIT}};',
605
- ],
606
- ]
607
- );
608
-
609
- $this->add_control(
610
- 'currency_color',
611
- [
612
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
613
- 'type' => Controls_Manager::COLOR,
614
- 'selectors' => [
615
- '{{WRAPPER}} .ha-pricing-table-currency' => 'color: {{VALUE}};',
616
- ],
617
- ]
618
- );
619
-
620
- $this->add_group_control(
621
- Group_Control_Typography::get_type(),
622
- [
623
- 'name' => 'currency_typography',
624
- 'selector' => '{{WRAPPER}} .ha-pricing-table-currency',
625
- 'scheme' => Typography::TYPOGRAPHY_3,
626
- ]
627
- );
628
-
629
- $this->add_control(
630
- '_heading_period',
631
- [
632
- 'type' => Controls_Manager::HEADING,
633
- 'label' => __( 'Period', 'happy-elementor-addons' ),
634
- 'separator' => 'before',
635
- ]
636
- );
637
-
638
- $this->add_responsive_control(
639
- 'period_spacing',
640
- [
641
- 'label' => __( 'Bottom Spacing', 'happy-elementor-addons' ),
642
- 'type' => Controls_Manager::SLIDER,
643
- 'size_units' => ['px'],
644
- 'selectors' => [
645
- '{{WRAPPER}} .ha-pricing-table-price' => 'margin-bottom: {{SIZE}}{{UNIT}};',
646
- ],
647
- ]
648
- );
649
-
650
- $this->add_control(
651
- 'period_color',
652
- [
653
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
654
- 'type' => Controls_Manager::COLOR,
655
- 'selectors' => [
656
- '{{WRAPPER}} .ha-pricing-table-period' => 'color: {{VALUE}};',
657
- ],
658
- ]
659
- );
660
-
661
- $this->add_group_control(
662
- Group_Control_Typography::get_type(),
663
- [
664
- 'name' => 'period_typography',
665
- 'selector' => '{{WRAPPER}} .ha-pricing-table-period',
666
- 'scheme' => Typography::TYPOGRAPHY_3,
667
- ]
668
- );
669
-
670
- $this->end_controls_section();
671
  }
672
 
673
- protected function __feature_style_controls() {
674
-
675
- $this->start_controls_section(
676
- '_section_style_features',
677
- [
678
- 'label' => __( 'Features', 'happy-elementor-addons' ),
679
- 'tab' => Controls_Manager::TAB_STYLE,
680
- ]
681
- );
682
-
683
- $this->add_responsive_control(
684
- 'features_container_spacing',
685
- [
686
- 'label' => __( 'Container Bottom Spacing', 'happy-elementor-addons' ),
687
- 'type' => Controls_Manager::SLIDER,
688
- 'size_units' => ['px'],
689
- 'selectors' => [
690
- '{{WRAPPER}} .ha-pricing-table-body' => 'margin-bottom: {{SIZE}}{{UNIT}};',
691
- ],
692
- ]
693
- );
694
-
695
- $this->add_control(
696
- '_heading_features_title',
697
- [
698
- 'type' => Controls_Manager::HEADING,
699
- 'label' => __( 'Title', 'happy-elementor-addons' ),
700
- 'separator' => 'before',
701
- ]
702
- );
703
-
704
- $this->add_responsive_control(
705
- 'features_title_spacing',
706
- [
707
- 'label' => __( 'Bottom Spacing', 'happy-elementor-addons' ),
708
- 'type' => Controls_Manager::SLIDER,
709
- 'size_units' => ['px'],
710
- 'selectors' => [
711
- '{{WRAPPER}} .ha-pricing-table-features-title' => 'margin-bottom: {{SIZE}}{{UNIT}};',
712
- ],
713
- ]
714
- );
715
-
716
- $this->add_control(
717
- 'features_title_color',
718
- [
719
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
720
- 'type' => Controls_Manager::COLOR,
721
- 'selectors' => [
722
- '{{WRAPPER}} .ha-pricing-table-features-title' => 'color: {{VALUE}};',
723
- ],
724
- ]
725
- );
726
-
727
- $this->add_group_control(
728
- Group_Control_Typography::get_type(),
729
- [
730
- 'name' => 'features_title_typography',
731
- 'selector' => '{{WRAPPER}} .ha-pricing-table-features-title',
732
- 'scheme' => Typography::TYPOGRAPHY_2,
733
- ]
734
- );
735
-
736
- $this->add_control(
737
- '_heading_features_list',
738
- [
739
- 'type' => Controls_Manager::HEADING,
740
- 'label' => __( 'List', 'happy-elementor-addons' ),
741
- 'separator' => 'before',
742
- ]
743
- );
744
-
745
- $this->add_responsive_control(
746
- 'features_list_spacing',
747
- [
748
- 'label' => __( 'Spacing Between', 'happy-elementor-addons' ),
749
- 'type' => Controls_Manager::SLIDER,
750
- 'size_units' => ['px'],
751
- 'selectors' => [
752
- '{{WRAPPER}} .ha-pricing-table-features-list > li' => 'margin-bottom: {{SIZE}}{{UNIT}};',
753
- ],
754
- ]
755
- );
756
-
757
- $this->add_control(
758
- 'features_list_color',
759
- [
760
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
761
- 'type' => Controls_Manager::COLOR,
762
- 'selectors' => [
763
- '{{WRAPPER}} .ha-pricing-table-features-list > li' => 'color: {{VALUE}};',
764
- ],
765
- ]
766
- );
767
-
768
- $this->add_group_control(
769
- Group_Control_Typography::get_type(),
770
- [
771
- 'name' => 'features_list_typography',
772
- 'selector' => '{{WRAPPER}} .ha-pricing-table-features-list > li',
773
- 'scheme' => Typography::TYPOGRAPHY_3,
774
- ]
775
- );
776
-
777
- $this->end_controls_section();
778
  }
779
 
780
- protected function __footer_style_controls() {
781
-
782
- $this->start_controls_section(
783
- '_section_style_footer',
784
- [
785
- 'label' => __( 'Footer', 'happy-elementor-addons' ),
786
- 'tab' => Controls_Manager::TAB_STYLE,
787
- ]
788
- );
789
-
790
- $this->add_control(
791
- '_heading_button',
792
- [
793
- 'type' => Controls_Manager::HEADING,
794
- 'label' => __( 'Button', 'happy-elementor-addons' ),
795
- ]
796
- );
797
-
798
- $this->add_responsive_control(
799
- 'button_padding',
800
- [
801
- 'label' => __( 'Padding', 'happy-elementor-addons' ),
802
- 'type' => Controls_Manager::DIMENSIONS,
803
- 'size_units' => [ 'px', 'em', '%' ],
804
- 'selectors' => [
805
- '{{WRAPPER}} .ha-pricing-table-btn' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
806
- ],
807
- ]
808
- );
809
-
810
- $this->add_group_control(
811
- Group_Control_Border::get_type(),
812
- [
813
- 'name' => 'button_border',
814
- 'selector' => '{{WRAPPER}} .ha-pricing-table-btn',
815
- ]
816
- );
817
-
818
- $this->add_control(
819
- 'button_border_radius',
820
- [
821
- 'label' => __( 'Border Radius', 'happy-elementor-addons' ),
822
- 'type' => Controls_Manager::DIMENSIONS,
823
- 'size_units' => [ 'px', '%' ],
824
- 'selectors' => [
825
- '{{WRAPPER}} .ha-pricing-table-btn' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
826
- ],
827
- ]
828
- );
829
-
830
- $this->add_group_control(
831
- Group_Control_Box_Shadow::get_type(),
832
- [
833
- 'name' => 'button_box_shadow',
834
- 'selector' => '{{WRAPPER}} .ha-pricing-table-btn',
835
- ]
836
- );
837
-
838
- $this->add_group_control(
839
- Group_Control_Typography::get_type(),
840
- [
841
- 'name' => 'button_typography',
842
- 'selector' => '{{WRAPPER}} .ha-pricing-table-btn',
843
- 'scheme' => Typography::TYPOGRAPHY_4,
844
- ]
845
- );
846
-
847
- $this->add_control(
848
- 'hr',
849
- [
850
- 'type' => Controls_Manager::DIVIDER,
851
- 'style' => 'thick',
852
- ]
853
- );
854
-
855
- $this->start_controls_tabs( '_tabs_button' );
856
-
857
- $this->start_controls_tab(
858
- '_tab_button_normal',
859
- [
860
- 'label' => __( 'Normal', 'happy-elementor-addons' ),
861
- ]
862
- );
863
-
864
- $this->add_control(
865
- 'button_color',
866
- [
867
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
868
- 'type' => Controls_Manager::COLOR,
869
- 'selectors' => [
870
- '{{WRAPPER}} .ha-pricing-table-btn' => 'color: {{VALUE}};',
871
- ],
872
- ]
873
- );
874
-
875
- $this->add_control(
876
- 'button_bg_color',
877
- [
878
- 'label' => __( 'Background Color', 'happy-elementor-addons' ),
879
- 'type' => Controls_Manager::COLOR,
880
- 'selectors' => [
881
- '{{WRAPPER}} .ha-pricing-table-btn' => 'background-color: {{VALUE}};',
882
- ],
883
- ]
884
- );
885
-
886
- $this->end_controls_tab();
887
-
888
- $this->start_controls_tab(
889
- '_tab_button_hover',
890
- [
891
- 'label' => __( 'Hover', 'happy-elementor-addons' ),
892
- ]
893
- );
894
-
895
- $this->add_control(
896
- 'button_hover_color',
897
- [
898
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
899
- 'type' => Controls_Manager::COLOR,
900
- 'selectors' => [
901
- '{{WRAPPER}} .ha-pricing-table-btn:hover, {{WRAPPER}} .ha-pricing-table-btn:focus' => 'color: {{VALUE}};',
902
- ],
903
- ]
904
- );
905
-
906
- $this->add_control(
907
- 'button_hover_bg_color',
908
- [
909
- 'label' => __( 'Background Color', 'happy-elementor-addons' ),
910
- 'type' => Controls_Manager::COLOR,
911
- 'selectors' => [
912
- '{{WRAPPER}} .ha-pricing-table-btn:hover, {{WRAPPER}} .ha-pricing-table-btn:focus' => 'background-color: {{VALUE}};',
913
- ],
914
- ]
915
- );
916
-
917
- $this->add_control(
918
- 'button_hover_border_color',
919
- [
920
- 'label' => __( 'Border Color', 'happy-elementor-addons' ),
921
- 'type' => Controls_Manager::COLOR,
922
- 'condition' => [
923
- 'button_border_border!' => '',
924
- ],
925
- 'selectors' => [
926
- '{{WRAPPER}} .ha-pricing-table-btn:hover, {{WRAPPER}} .ha-pricing-table-btn:focus' => 'border-color: {{VALUE}};',
927
- ],
928
- ]
929
- );
930
-
931
- $this->end_controls_tab();
932
- $this->end_controls_tabs();
933
-
934
- $this->end_controls_section();
935
  }
936
 
937
- protected function __badge_style_controls() {
938
-
939
- $this->start_controls_section(
940
- '_section_style_badge',
941
- [
942
- 'label' => __( 'Badge', 'happy-elementor-addons' ),
943
- 'tab' => Controls_Manager::TAB_STYLE,
944
- ]
945
- );
946
-
947
- $this->add_responsive_control(
948
- 'badge_padding',
949
- [
950
- 'label' => __( 'Padding', 'happy-elementor-addons' ),
951
- 'type' => Controls_Manager::DIMENSIONS,
952
- 'size_units' => [ 'px', 'em', '%' ],
953
- 'selectors' => [
954
- '{{WRAPPER}} .ha-pricing-table-badge' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
955
- ],
956
- ]
957
- );
958
-
959
- $this->add_control(
960
- 'badge_color',
961
- [
962
- 'label' => __( 'Text Color', 'happy-elementor-addons' ),
963
- 'type' => Controls_Manager::COLOR,
964
- 'selectors' => [
965
- '{{WRAPPER}} .ha-pricing-table-badge' => 'color: {{VALUE}};',
966
- ],
967
- ]
968
- );
969
-
970
- $this->add_control(
971
- 'badge_bg_color',
972
- [
973
- 'label' => __( 'Background Color', 'happy-elementor-addons' ),
974
- 'type' => Controls_Manager::COLOR,
975
- 'selectors' => [
976
- '{{WRAPPER}} .ha-pricing-table-badge' => 'background-color: {{VALUE}};',
977
- ],
978
- ]
979
- );
980
-
981
- $this->add_group_control(
982
- Group_Control_Border::get_type(),
983
- [
984
- 'name' => 'badge_border',
985
- 'selector' => '{{WRAPPER}} .ha-pricing-table-badge',
986
- ]
987
- );
988
-
989
- $this->add_responsive_control(
990
- 'badge_border_radius',
991
- [
992
- 'label' => __( 'Border Radius', 'happy-elementor-addons' ),
993
- 'type' => Controls_Manager::DIMENSIONS,
994
- 'size_units' => [ 'px', '%' ],
995
- 'selectors' => [
996
- '{{WRAPPER}} .ha-pricing-table-badge' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
997
- ],
998
- ]
999
- );
1000
-
1001
- $this->add_group_control(
1002
- Group_Control_Box_Shadow::get_type(),
1003
- [
1004
- 'name' => 'badge_box_shadow',
1005
- 'selector' => '{{WRAPPER}} .ha-pricing-table-badge',
1006
- ]
1007
- );
1008
-
1009
- $this->add_group_control(
1010
- Group_Control_Typography::get_type(),
1011
- [
1012
- 'name' => 'badge_typography',
1013
- 'label' => __( 'Typography', 'happy-elementor-addons' ),
1014
- 'selector' => '{{WRAPPER}} .ha-pricing-table-badge',
1015
- 'scheme' => Typography::TYPOGRAPHY_3,
1016
- ]
1017
- );
1018
-
1019
- $this->end_controls_section();
1020
- }
1021
-
1022
- private static function get_currency_symbol( $symbol_name ) {
1023
- $symbols = [
1024
- 'baht' => '&#3647;',
1025
- 'bdt' => '&#2547;',
1026
- 'dollar' => '&#36;',
1027
- 'euro' => '&#128;',
1028
- 'franc' => '&#8355;',
1029
- 'guilder' => '&fnof;',
1030
- 'indian_rupee' => '&#8377;',
1031
- 'pound' => '&#163;',
1032
- 'peso' => '&#8369;',
1033
- 'peseta' => '&#8359',
1034
- 'lira' => '&#8356;',
1035
- 'ruble' => '&#8381;',
1036
- 'shekel' => '&#8362;',
1037
- 'rupee' => '&#8360;',
1038
- 'real' => 'R$',
1039
- 'krona' => 'kr',
1040
- 'won' => '&#8361;',
1041
- 'yen' => '&#165;',
1042
- ];
1043
-
1044
- return isset( $symbols[ $symbol_name ] ) ? $symbols[ $symbol_name ] : '';
1045
- }
1046
 
1047
  protected function render() {
1048
- $settings = $this->get_settings_for_display();
1049
 
1050
- $this->add_render_attribute( 'badge_text', 'class',
1051
- [
1052
- 'ha-pricing-table-badge',
1053
- 'ha-pricing-table-badge--' . $settings['badge_position']
1054
- ]
1055
- );
1056
 
1057
- $this->add_inline_editing_attributes( 'title', 'basic' );
1058
- $this->add_render_attribute( 'title', 'class', 'ha-pricing-table-title' );
1059
 
1060
- $this->add_inline_editing_attributes( 'price', 'basic' );
1061
- $this->add_render_attribute( 'price', 'class', 'ha-pricing-table-price-text' );
1062
 
1063
- $this->add_inline_editing_attributes( 'period', 'basic' );
1064
- $this->add_render_attribute( 'period', 'class', 'ha-pricing-table-period' );
1065
 
1066
- $this->add_inline_editing_attributes( 'features_title', 'basic' );
1067
- $this->add_render_attribute( 'features_title', 'class', 'ha-pricing-table-features-title' );
1068
 
1069
- $this->add_inline_editing_attributes( 'button_text', 'none' );
1070
- $this->add_render_attribute( 'button_text', 'class', 'ha-pricing-table-btn' );
1071
 
1072
- $this->add_link_attributes( 'button_text', $settings['button_link'] );
1073
 
1074
- if ( $settings['currency'] === 'custom' ) {
1075
- $currency = $settings['currency_custom'];
1076
- } else {
1077
- $currency = self::get_currency_symbol( $settings['currency'] );
1078
- }
1079
- ?>
1080
 
1081
- <?php if ( $settings['show_badge'] ) : ?>
1082
- <span <?php $this->print_render_attribute_string( 'badge_text' ); ?>><?php echo esc_html( $settings['badge_text'] ); ?></span>
1083
- <?php endif; ?>
1084
 
1085
- <div class="ha-pricing-table-header">
1086
- <?php if ( $settings['title'] ) : ?>
1087
  <?php
1088
  printf(
1089
  '<%1$s %2$s>%3$s</%1$s>',
1090
  ha_escape_tags( $settings['title_tag'] ),
1091
  $this->get_render_attribute_string( 'title' ),
1092
- esc_html( ha_kses_basic( $settings['title'] ) )
1093
  );
1094
  ?>
1095
- <?php endif; ?>
1096
- </div>
1097
- <div class="ha-pricing-table-price">
1098
- <div class="ha-pricing-table-price-tag"><span class="ha-pricing-table-currency"><?php echo esc_html( $currency ); ?></span><span <?php $this->print_render_attribute_string( 'price' ); ?>><?php echo ha_kses_basic( $settings['price'] ); ?></span></div>
1099
- <?php if ( $settings['period'] ) : ?>
1100
- <div <?php $this->print_render_attribute_string( 'period' ); ?>><?php echo ha_kses_basic( $settings['period'] ); ?></div>
1101
- <?php endif; ?>
1102
- </div>
1103
- <div class="ha-pricing-table-body">
1104
- <?php if ( $settings['features_title'] ) : ?>
1105
  <?php
1106
  printf(
1107
  '<%1$s %2$s>%3$s</%1$s>',
1108
  ha_escape_tags( $settings['features_title_tag'] ),
1109
  $this->get_render_attribute_string( 'features_title' ),
1110
- esc_html( ha_kses_basic( $settings['features_title'] ) )
1111
  );
1112
  ?>
1113
- <?php endif; ?>
1114
-
1115
- <?php if ( is_array( $settings['features_list'] ) ) : ?>
1116
- <ul class="ha-pricing-table-features-list">
1117
- <?php foreach ( $settings['features_list'] as $index => $feature ) :
1118
- $name_key = $this->get_repeater_setting_key( 'text', 'features_list', $index );
1119
- $this->add_inline_editing_attributes( $name_key, 'intermediate' );
1120
- $this->add_render_attribute( $name_key, 'class', 'ha-pricing-table-feature-text' );
1121
- ?>
1122
- <li class="<?php echo esc_attr( 'elementor-repeater-item-' . $feature['_id'] ); ?>">
1123
- <?php if ( ! empty( $feature['icon'] ) || ! empty( $feature['selected_icon']['value'] ) ) :
1124
- ha_render_icon( $feature, 'icon', 'selected_icon' );
1125
- endif; ?>
1126
- <div <?php $this->print_render_attribute_string( $name_key ); ?>><?php echo ha_kses_intermediate( $feature['text'] ); ?></div>
1127
- </li>
1128
- <?php endforeach; ?>
1129
- </ul>
1130
- <?php endif; ?>
1131
- </div>
1132
-
1133
- <?php if ( $settings['button_text'] ) : ?>
1134
- <a <?php $this->print_render_attribute_string( 'button_text' ); ?>><?php echo esc_html( $settings['button_text'] ); ?></a>
1135
- <?php endif; ?>
1136
-
1137
- <?php
1138
- }
1139
  }
18
 
19
  class Pricing_Table extends Base {
20
 
21
+ /**
22
+ * Get widget title.
23
+ *
24
+ * @since 1.0.0
25
+ * @access public
26
+ *
27
+ * @return string Widget title.
28
+ */
29
+ public function get_title() {
30
+ return __( 'Pricing Table', 'happy-elementor-addons' );
31
+ }
32
 
33
  public function get_custom_help_url() {
34
  return 'https://happyaddons.com/docs/happy-addons-for-elementor/widgets/pricing-table/';
35
  }
36
 
37
+ /**
38
+ * Get widget icon.
39
+ *
40
+ * @since 1.0.0
41
+ * @access public
42
+ *
43
+ * @return string Widget icon.
44
+ */
45
+ public function get_icon() {
46
+ return 'hm hm-file-cabinet';
47
+ }
48
+
49
+ public function get_keywords() {
50
+ return [ 'pricing', 'price', 'table', 'package', 'product', 'plan' ];
51
+ }
52
 
53
  /**
54
+ * Register widget content controls
55
+ */
56
  protected function register_content_controls() {
57
  $this->__header_content_controls();
58
  $this->__price_content_controls();
67
  '_section_header',
68
  [
69
  'label' => __( 'Header', 'happy-elementor-addons' ),
70
+ 'tab' => Controls_Manager::TAB_CONTENT,
71
  ]
72
  );
73
 
74
+ $this->add_control(
75
+ 'title',
76
+ [
77
+ 'label' => __( 'Title', 'happy-elementor-addons' ),
78
+ 'type' => Controls_Manager::TEXT,
79
+ 'label_block' => true,
80
+ 'default' => __( 'Basic', 'happy-elementor-addons' ),
81
+ 'dynamic' => [
82
+ 'active' => true,
83
+ ],
84
+ ]
85
+ );
86
 
87
  $this->add_control(
88
  'title_tag',
120
  ]
121
  );
122
 
123
+ $this->end_controls_section();
124
  }
125
 
126
  protected function __price_content_controls() {
127
 
128
+ $this->start_controls_section(
129
+ '_section_pricing',
130
+ [
131
+ 'label' => __( 'Pricing', 'happy-elementor-addons' ),
132
+ 'tab' => Controls_Manager::TAB_CONTENT,
133
+ ]
134
+ );
135
+
136
+ $this->add_control(
137
+ 'currency',
138
+ [
139
+ 'label' => __( 'Currency', 'happy-elementor-addons' ),
140
+ 'type' => Controls_Manager::SELECT,
141
+ 'label_block' => false,
142
+ 'options' => [
143
+ '' => __( 'None', 'happy-elementor-addons' ),
144
+ 'baht' => '&#3647; ' . _x( 'Baht', 'Currency Symbol', 'happy-elementor-addons' ),
145
+ 'bdt' => '&#2547; ' . _x( 'BD Taka', 'Currency Symbol', 'happy-elementor-addons' ),
146
+ 'dollar' => '&#36; ' . _x( 'Dollar', 'Currency Symbol', 'happy-elementor-addons' ),
147
+ 'euro' => '&#128; ' . _x( 'Euro', 'Currency Symbol', 'happy-elementor-addons' ),
148
+ 'franc' => '&#8355; ' . _x( 'Franc', 'Currency Symbol', 'happy-elementor-addons' ),
149
+ 'guilder' => '&fnof; ' . _x( 'Guilder', 'Currency Symbol', 'happy-elementor-addons' ),
150
+ 'krona' => 'kr ' . _x( 'Krona', 'Currency Symbol', 'happy-elementor-addons' ),
151
+ 'lira' => '&#8356; ' . _x( 'Lira', 'Currency Symbol', 'happy-elementor-addons' ),
152
+ 'peseta' => '&#8359 ' . _x( 'Peseta', 'Currency Symbol', 'happy-elementor-addons' ),
153
+ 'peso' => '&#8369; ' . _x( 'Peso', 'Currency Symbol', 'happy-elementor-addons' ),
154
+ 'pound' => '&#163; ' . _x( 'Pound Sterling', 'Currency Symbol', 'happy-elementor-addons' ),
155
+ 'real' => 'R$ ' . _x( 'Real', 'Currency Symbol', 'happy-elementor-addons' ),
156
+ 'ruble' => '&#8381; ' . _x( 'Ruble', 'Currency Symbol', 'happy-elementor-addons' ),
157
+ 'rupee' => '&#8360; ' . _x( 'Rupee', 'Currency Symbol', 'happy-elementor-addons' ),
158
+ 'indian_rupee' => '&#8377; ' . _x( 'Rupee (Indian)', 'Currency Symbol', 'happy-elementor-addons' ),
159
+ 'shekel' => '&#8362; ' . _x( 'Shekel', 'Currency Symbol', 'happy-elementor-addons' ),
160
+ 'won' => '&#8361; ' . _x( 'Won', 'Currency Symbol', 'happy-elementor-addons' ),
161
+ 'yen' => '&#165; ' . _x( 'Yen/Yuan', 'Currency Symbol', 'happy-elementor-addons' ),
162
+ 'custom' => __( 'Custom', 'happy-elementor-addons' ),
163
+ ],
164
+ 'default' => 'dollar',
165
+ ]
166
+ );
167
+
168
+ $this->add_control(
169
+ 'currency_custom',
170
+ [
171
+ 'label' => __( 'Custom Symbol', 'happy-elementor-addons' ),
172
+ 'type' => Controls_Manager::TEXT,
173
+ 'condition' => [
174
+ 'currency' => 'custom',
175
+ ],
176
+ 'dynamic' => [
177
+ 'active' => true,
178
+ ],
179
+ ]
180
+ );
181
+
182
+ $this->add_control(
183
+ 'price',
184
+ [
185
+ 'label' => __( 'Price', 'happy-elementor-addons' ),
186
+ 'type' => Controls_Manager::TEXT,
187
+ 'default' => '9.99',
188
+ 'dynamic' => [
189
+ 'active' => true,
190
+ ],
191
+ ]
192
+ );
193
+
194
+ $this->add_control(
195
+ 'period',
196
+ [
197
+ 'label' => __( 'Period', 'happy-elementor-addons' ),
198
+ 'type' => Controls_Manager::TEXT,
199
+ 'default' => __( 'Per Month', 'happy-elementor-addons' ),
200
+ 'dynamic' => [
201
+ 'active' => true,
202
+ ],
203
+ ]
204
+ );
205
+
206
+ $this->end_controls_section();
207
  }
208
 
209
  protected function __features_content_controls() {
210
 
211
+ $this->start_controls_section(
212
+ '_section_features',
213
+ [
214
+ 'label' => __( 'Features', 'happy-elementor-addons' ),
215
+ ]
216
+ );
217
+
218
+ $this->add_control(
219
+ 'features_title',
220
+ [
221
+ 'label' => __( 'Title', 'happy-elementor-addons' ),
222
+ 'type' => Controls_Manager::TEXT,
223
+ 'default' => __( 'Features', 'happy-elementor-addons' ),
224
+ 'separator' => 'after',
225
+ 'label_block' => true,
226
+ 'dynamic' => [
227
+ 'active' => true,
228
+ ],
229
+ ]
230
+ );
231
 
232
  $this->add_control(
233
  'features_title_tag',
270
  $repeater->add_control(
271
  'text',
272
  [
273
+ 'label' => __( 'Text', 'happy-elementor-addons' ),
274
+ 'type' => Controls_Manager::TEXTAREA,
275
  'default' => __( 'Exciting Feature', 'happy-elementor-addons' ),
276
  'dynamic' => [
277
+ 'active' => true,
278
+ ],
279
  ]
280
  );
281
 
282
  $repeater->add_control(
283
  'selected_icon',
284
  [
285
+ 'label' => __( 'Icon', 'happy-elementor-addons' ),
286
+ 'type' => Controls_Manager::ICONS,
287
  'fa4compatibility' => 'icon',
288
+ 'default' => [
289
+ 'value' => 'fas fa-check',
290
  'library' => 'fa-solid',
291
  ],
292
+ 'recommended' => [
293
  'fa-regular' => [
294
  'check-square',
295
  'window-close',
296
  ],
297
+ 'fa-solid' => [
298
  'check',
299
+ ],
300
+ ],
301
+ ]
302
+ );
303
+
304
+ $this->add_control(
305
+ 'features_list',
306
+ [
307
+ 'type' => Controls_Manager::REPEATER,
308
+ 'fields' => $repeater->get_controls(),
309
+ 'show_label' => false,
310
+ 'default' => [
311
+ [
312
+ 'text' => __( 'Standard Feature', 'happy-elementor-addons' ),
313
+ 'icon' => 'fa fa-check',
314
+ ],
315
+ [
316
+ 'text' => __( 'Another Great Feature', 'happy-elementor-addons' ),
317
+ 'icon' => 'fa fa-check',
318
+ ],
319
+ [
320
+ 'text' => __( 'Obsolete Feature', 'happy-elementor-addons' ),
321
+ 'icon' => 'fa fa-close',
322
+ ],
323
+ [
324
+ 'text' => __( 'Exciting Feature', 'happy-elementor-addons' ),
325
+ 'icon' => 'fa fa-check',
326
+ ],
327
+ ],
328
+ 'title_field' => '<# print(haGetFeatureLabel(text)); #>',
329
+ ]
330
+ );
331
+
332
+ $this->end_controls_section();
333
  }
334
 
335
  protected function __footer_content_controls() {
336
 
337
+ $this->start_controls_section(
338
+ '_section_footer',
339
+ [
340
+ 'label' => __( 'Footer', 'happy-elementor-addons' ),
341
+ 'tab' => Controls_Manager::TAB_CONTENT,
342
+ ]
343
+ );
344
+
345
+ $this->add_control(
346
+ 'button_text',
347
+ [
348
+ 'label' => __( 'Button Text', 'happy-elementor-addons' ),
349
+ 'type' => Controls_Manager::TEXT,
350
+ 'default' => __( 'Subscribe', 'happy-elementor-addons' ),
351
+ 'placeholder' => __( 'Type button text here', 'happy-elementor-addons' ),
352
+ 'label_block' => true,
353
+ 'dynamic' => [
354
+ 'active' => true,
355
+ ],
356
+ ]
357
+ );
358
+
359
+ $this->add_control(
360
+ 'button_link',
361
+ [
362
+ 'label' => __( 'Link', 'happy-elementor-addons' ),
363
+ 'type' => Controls_Manager::URL,
364
+ 'label_block' => true,
365
+ 'placeholder' => 'https://example.com',
366
+ 'dynamic' => [
367
+ 'active' => true,
368
+ ],
369
+ 'default' => [
370
+ 'url' => '#',
371
  ],
372
+ ]
373
+ );
 
 
 
374
 
375
+ $this->end_controls_section();
376
  }
377
 
378
  protected function __badge_content_controls() {
379
 
380
+ $this->start_controls_section(
381
+ '_section_badge',
382
+ [
383
+ 'label' => __( 'Badge', 'happy-elementor-addons' ),
384
+ ]
385
+ );
386
+
387
+ $this->add_control(
388
+ 'show_badge',
389
+ [
390
+ 'label' => __( 'Show', 'happy-elementor-addons' ),
391
+ 'type' => Controls_Manager::SWITCHER,
392
+ 'label_on' => __( 'Show', 'happy-elementor-addons' ),
393
+ 'label_off' => __( 'Hide', 'happy-elementor-addons' ),
394
+ 'return_value' => 'yes',
395
+ 'default' => 'yes',
396
+ 'style_transfer' => true,
397
+ ]
398
+ );
399
+
400
+ $this->add_control(
401
+ 'badge_position',
402
+ [
403
+ 'label' => __( 'Position', 'happy-elementor-addons' ),
404
+ 'type' => Controls_Manager::CHOOSE,
405
+ 'label_block' => false,
406
+ 'options' => [
407
+ 'left' => [
408
+ 'title' => __( 'Left', 'happy-elementor-addons' ),
409
+ 'icon' => 'eicon-h-align-left',
410
+ ],
411
+ 'right' => [
412
+ 'title' => __( 'Right', 'happy-elementor-addons' ),
413
+ 'icon' => 'eicon-h-align-right',
414
+ ],
415
+ ],
416
+ 'toggle' => false,
417
+ 'default' => 'left',
418
+ 'style_transfer' => true,
419
+ 'condition' => [
420
+ 'show_badge' => 'yes',
421
+ ],
422
+ ]
423
+ );
424
+
425
+ $this->add_control(
426
+ 'badge_text',
427
+ [
428
+ 'label' => __( 'Badge Text', 'happy-elementor-addons' ),
429
+ 'type' => Controls_Manager::TEXT,
430
+ 'default' => __( 'Recommended', 'happy-elementor-addons' ),
431
+ 'placeholder' => __( 'Type badge text', 'happy-elementor-addons' ),
432
+ 'condition' => [
433
+ 'show_badge' => 'yes',
434
+ ],
435
+ 'dynamic' => [
436
+ 'active' => true,
437
+ ],
438
+ ]
439
+ );
440
+
441
+ $this->end_controls_section();
442
+ }
443
 
444
  /**
445
+ * Register widget style controls
446
+ */
447
+ protected function register_style_controls() {
448
  $this->__general_style_controls();
449
  $this->__header_style_controls();
450
  $this->__price_style_controls();
453
  $this->__badge_style_controls();
454
  }
455
 
456
+ protected function __general_style_controls() {
457
+
458
+ $this->start_controls_section(
459
+ '_section_style_general',
460
+ [
461
+ 'label' => __( 'General', 'happy-elementor-addons' ),
462
+ 'tab' => Controls_Manager::TAB_STYLE,
463
+ ]
464
+ );
465
+
466
+ $this->add_control(
467
+ 'text_color',
468
+ [
469
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
470
+ 'type' => Controls_Manager::COLOR,
471
+ 'selectors' => [
472
+ '{{WRAPPER}} .ha-pricing-table-title,'
473
+ . '{{WRAPPER}} .ha-pricing-table-currency,'
474
+ . '{{WRAPPER}} .ha-pricing-table-period,'
475
+ . '{{WRAPPER}} .ha-pricing-table-features-title,'
476
+ . '{{WRAPPER}} .ha-pricing-table-features-list li,'
477
+ . '{{WRAPPER}} .ha-pricing-table-price-text' => 'color: {{VALUE}};',
478
+ ],
479
+ ]
480
+ );
481
+
482
+ $this->end_controls_section();
483
  }
484
 
485
+ protected function __header_style_controls() {
486
+
487
+ $this->start_controls_section(
488
+ '_section_style_header',
489
+ [
490
+ 'label' => __( 'Header', 'happy-elementor-addons' ),
491
+ 'tab' => Controls_Manager::TAB_STYLE,
492
+ ]
493
+ );
494
+
495
+ $this->add_responsive_control(
496
+ 'title_spacing',
497
+ [
498
+ 'label' => __( 'Bottom Spacing', 'happy-elementor-addons' ),
499
+ 'type' => Controls_Manager::SLIDER,
500
+ 'size_units' => ['px'],
501
+ 'selectors' => [
502
+ '{{WRAPPER}} .ha-pricing-table-title' => 'margin-bottom: {{SIZE}}{{UNIT}};',
503
+ ],
504
+ ]
505
+ );
506
+
507
+ $this->add_control(
508
+ 'title_color',
509
+ [
510
+ 'label' => __( 'Title Color', 'happy-elementor-addons' ),
511
+ 'type' => Controls_Manager::COLOR,
512
+ 'selectors' => [
513
+ '{{WRAPPER}} .ha-pricing-table-title' => 'color: {{VALUE}};',
514
+ ],
515
+ ]
516
+ );
517
+
518
+ $this->add_group_control(
519
+ Group_Control_Typography::get_type(),
520
+ [
521
+ 'name' => 'title_typography',
522
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-title',
523
+ 'scheme' => Typography::TYPOGRAPHY_2,
524
+ ]
525
+ );
526
+
527
+ $this->add_group_control(
528
+ Group_Control_Text_Shadow::get_type(),
529
+ [
530
+ 'name' => 'title_text_shadow',
531
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-title',
532
+ ]
533
+ );
534
+
535
+ $this->end_controls_section();
536
  }
537
 
538
+ protected function __price_style_controls() {
539
+
540
+ $this->start_controls_section(
541
+ '_section_style_pricing',
542
+ [
543
+ 'label' => __( 'Pricing', 'happy-elementor-addons' ),
544
+ 'tab' => Controls_Manager::TAB_STYLE,
545
+ ]
546
+ );
547
+
548
+ $this->add_control(
549
+ '_heading_price',
550
+ [
551
+ 'type' => Controls_Manager::HEADING,
552
+ 'label' => __( 'Price', 'happy-elementor-addons' ),
553
+ ]
554
+ );
555
+
556
+ $this->add_responsive_control(
557
+ 'price_spacing',
558
+ [
559
+ 'label' => __( 'Bottom Spacing', 'happy-elementor-addons' ),
560
+ 'type' => Controls_Manager::SLIDER,
561
+ 'size_units' => ['px'],
562
+ 'selectors' => [
563
+ '{{WRAPPER}} .ha-pricing-table-price-tag' => 'margin-bottom: {{SIZE}}{{UNIT}};',
564
+ ],
565
+ ]
566
+ );
567
+
568
+ $this->add_control(
569
+ 'price_color',
570
+ [
571
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
572
+ 'type' => Controls_Manager::COLOR,
573
+ 'selectors' => [
574
+ '{{WRAPPER}} .ha-pricing-table-price-text' => 'color: {{VALUE}};',
575
+ ],
576
+ ]
577
+ );
578
+
579
+ $this->add_group_control(
580
+ Group_Control_Typography::get_type(),
581
+ [
582
+ 'name' => 'price_typography',
583
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-price-text',
584
+ 'scheme' => Typography::TYPOGRAPHY_3,
585
+ ]
586
+ );
587
+
588
+ $this->add_control(
589
+ '_heading_currency',
590
+ [
591
+ 'type' => Controls_Manager::HEADING,
592
+ 'label' => __( 'Currency', 'happy-elementor-addons' ),
593
+ 'separator' => 'before',
594
+ ]
595
+ );
596
+
597
+ $this->add_responsive_control(
598
+ 'currency_spacing',
599
+ [
600
+ 'label' => __( 'Side Spacing', 'happy-elementor-addons' ),
601
+ 'type' => Controls_Manager::SLIDER,
602
+ 'size_units' => ['px'],
603
+ 'selectors' => [
604
+ '{{WRAPPER}} .ha-pricing-table-currency' => 'margin-right: {{SIZE}}{{UNIT}};',
605
+ ],
606
+ ]
607
+ );
608
+
609
+ $this->add_control(
610
+ 'currency_color',
611
+ [
612
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
613
+ 'type' => Controls_Manager::COLOR,
614
+ 'selectors' => [
615
+ '{{WRAPPER}} .ha-pricing-table-currency' => 'color: {{VALUE}};',
616
+ ],
617
+ ]
618
+ );
619
+
620
+ $this->add_group_control(
621
+ Group_Control_Typography::get_type(),
622
+ [
623
+ 'name' => 'currency_typography',
624
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-currency',
625
+ 'scheme' => Typography::TYPOGRAPHY_3,
626
+ ]
627
+ );
628
+
629
+ $this->add_control(
630
+ '_heading_period',
631
+ [
632
+ 'type' => Controls_Manager::HEADING,
633
+ 'label' => __( 'Period', 'happy-elementor-addons' ),
634
+ 'separator' => 'before',
635
+ ]
636
+ );
637
+
638
+ $this->add_responsive_control(
639
+ 'period_spacing',
640
+ [
641
+ 'label' => __( 'Bottom Spacing', 'happy-elementor-addons' ),
642
+ 'type' => Controls_Manager::SLIDER,
643
+ 'size_units' => ['px'],
644
+ 'selectors' => [
645
+ '{{WRAPPER}} .ha-pricing-table-price' => 'margin-bottom: {{SIZE}}{{UNIT}};',
646
+ ],
647
+ ]
648
+ );
649
+
650
+ $this->add_control(
651
+ 'period_color',
652
+ [
653
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
654
+ 'type' => Controls_Manager::COLOR,
655
+ 'selectors' => [
656
+ '{{WRAPPER}} .ha-pricing-table-period' => 'color: {{VALUE}};',
657
+ ],
658
+ ]
659
+ );
660
+
661
+ $this->add_group_control(
662
+ Group_Control_Typography::get_type(),
663
+ [
664
+ 'name' => 'period_typography',
665
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-period',
666
+ 'scheme' => Typography::TYPOGRAPHY_3,
667
+ ]
668
+ );
669
+
670
+ $this->end_controls_section();
671
  }
672
 
673
+ protected function __feature_style_controls() {
674
+
675
+ $this->start_controls_section(
676
+ '_section_style_features',
677
+ [
678
+ 'label' => __( 'Features', 'happy-elementor-addons' ),
679
+ 'tab' => Controls_Manager::TAB_STYLE,
680
+ ]
681
+ );
682
+
683
+ $this->add_responsive_control(
684
+ 'features_container_spacing',
685
+ [
686
+ 'label' => __( 'Container Bottom Spacing', 'happy-elementor-addons' ),
687
+ 'type' => Controls_Manager::SLIDER,
688
+ 'size_units' => ['px'],
689
+ 'selectors' => [
690
+ '{{WRAPPER}} .ha-pricing-table-body' => 'margin-bottom: {{SIZE}}{{UNIT}};',
691
+ ],
692
+ ]
693
+ );
694
+
695
+ $this->add_control(
696
+ '_heading_features_title',
697
+ [
698
+ 'type' => Controls_Manager::HEADING,
699
+ 'label' => __( 'Title', 'happy-elementor-addons' ),
700
+ 'separator' => 'before',
701
+ ]
702
+ );
703
+
704
+ $this->add_responsive_control(
705
+ 'features_title_spacing',
706
+ [
707
+ 'label' => __( 'Bottom Spacing', 'happy-elementor-addons' ),
708
+ 'type' => Controls_Manager::SLIDER,
709
+ 'size_units' => ['px'],
710
+ 'selectors' => [
711
+ '{{WRAPPER}} .ha-pricing-table-features-title' => 'margin-bottom: {{SIZE}}{{UNIT}};',
712
+ ],
713
+ ]
714
+ );
715
+
716
+ $this->add_control(
717
+ 'features_title_color',
718
+ [
719
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
720
+ 'type' => Controls_Manager::COLOR,
721
+ 'selectors' => [
722
+ '{{WRAPPER}} .ha-pricing-table-features-title' => 'color: {{VALUE}};',
723
+ ],
724
+ ]
725
+ );
726
+
727
+ $this->add_group_control(
728
+ Group_Control_Typography::get_type(),
729
+ [
730
+ 'name' => 'features_title_typography',
731
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-features-title',
732
+ 'scheme' => Typography::TYPOGRAPHY_2,
733
+ ]
734
+ );
735
+
736
+ $this->add_control(
737
+ '_heading_features_list',
738
+ [
739
+ 'type' => Controls_Manager::HEADING,
740
+ 'label' => __( 'List', 'happy-elementor-addons' ),
741
+ 'separator' => 'before',
742
+ ]
743
+ );
744
+
745
+ $this->add_responsive_control(
746
+ 'features_list_spacing',
747
+ [
748
+ 'label' => __( 'Spacing Between', 'happy-elementor-addons' ),
749
+ 'type' => Controls_Manager::SLIDER,
750
+ 'size_units' => ['px'],
751
+ 'selectors' => [
752
+ '{{WRAPPER}} .ha-pricing-table-features-list > li' => 'margin-bottom: {{SIZE}}{{UNIT}};',
753
+ ],
754
+ ]
755
+ );
756
+
757
+ $this->add_control(
758
+ 'features_list_color',
759
+ [
760
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
761
+ 'type' => Controls_Manager::COLOR,
762
+ 'selectors' => [
763
+ '{{WRAPPER}} .ha-pricing-table-features-list > li' => 'color: {{VALUE}};',
764
+ ],
765
+ ]
766
+ );
767
+
768
+ $this->add_group_control(
769
+ Group_Control_Typography::get_type(),
770
+ [
771
+ 'name' => 'features_list_typography',
772
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-features-list > li',
773
+ 'scheme' => Typography::TYPOGRAPHY_3,
774
+ ]
775
+ );
776
+
777
+ $this->end_controls_section();
778
  }
779
 
780
+ protected function __footer_style_controls() {
781
+
782
+ $this->start_controls_section(
783
+ '_section_style_footer',
784
+ [
785
+ 'label' => __( 'Footer', 'happy-elementor-addons' ),
786
+ 'tab' => Controls_Manager::TAB_STYLE,
787
+ ]
788
+ );
789
+
790
+ $this->add_control(
791
+ '_heading_button',
792
+ [
793
+ 'type' => Controls_Manager::HEADING,
794
+ 'label' => __( 'Button', 'happy-elementor-addons' ),
795
+ ]
796
+ );
797
+
798
+ $this->add_responsive_control(
799
+ 'button_padding',
800
+ [
801
+ 'label' => __( 'Padding', 'happy-elementor-addons' ),
802
+ 'type' => Controls_Manager::DIMENSIONS,
803
+ 'size_units' => [ 'px', 'em', '%' ],
804
+ 'selectors' => [
805
+ '{{WRAPPER}} .ha-pricing-table-btn' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
806
+ ],
807
+ ]
808
+ );
809
+
810
+ $this->add_group_control(
811
+ Group_Control_Border::get_type(),
812
+ [
813
+ 'name' => 'button_border',
814
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-btn',
815
+ ]
816
+ );
817
+
818
+ $this->add_control(
819
+ 'button_border_radius',
820
+ [
821
+ 'label' => __( 'Border Radius', 'happy-elementor-addons' ),
822
+ 'type' => Controls_Manager::DIMENSIONS,
823
+ 'size_units' => [ 'px', '%' ],
824
+ 'selectors' => [
825
+ '{{WRAPPER}} .ha-pricing-table-btn' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
826
+ ],
827
+ ]
828
+ );
829
+
830
+ $this->add_group_control(
831
+ Group_Control_Box_Shadow::get_type(),
832
+ [
833
+ 'name' => 'button_box_shadow',
834
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-btn',
835
+ ]
836
+ );
837
+
838
+ $this->add_group_control(
839
+ Group_Control_Typography::get_type(),
840
+ [
841
+ 'name' => 'button_typography',
842
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-btn',
843
+ 'scheme' => Typography::TYPOGRAPHY_4,
844
+ ]
845
+ );
846
+
847
+ $this->add_control(
848
+ 'hr',
849
+ [
850
+ 'type' => Controls_Manager::DIVIDER,
851
+ 'style' => 'thick',
852
+ ]
853
+ );
854
+
855
+ $this->start_controls_tabs( '_tabs_button' );
856
+
857
+ $this->start_controls_tab(
858
+ '_tab_button_normal',
859
+ [
860
+ 'label' => __( 'Normal', 'happy-elementor-addons' ),
861
+ ]
862
+ );
863
+
864
+ $this->add_control(
865
+ 'button_color',
866
+ [
867
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
868
+ 'type' => Controls_Manager::COLOR,
869
+ 'selectors' => [
870
+ '{{WRAPPER}} .ha-pricing-table-btn' => 'color: {{VALUE}};',
871
+ ],
872
+ ]
873
+ );
874
+
875
+ $this->add_control(
876
+ 'button_bg_color',
877
+ [
878
+ 'label' => __( 'Background Color', 'happy-elementor-addons' ),
879
+ 'type' => Controls_Manager::COLOR,
880
+ 'selectors' => [
881
+ '{{WRAPPER}} .ha-pricing-table-btn' => 'background-color: {{VALUE}};',
882
+ ],
883
+ ]
884
+ );
885
+
886
+ $this->end_controls_tab();
887
+
888
+ $this->start_controls_tab(
889
+ '_tab_button_hover',
890
+ [
891
+ 'label' => __( 'Hover', 'happy-elementor-addons' ),
892
+ ]
893
+ );
894
+
895
+ $this->add_control(
896
+ 'button_hover_color',
897
+ [
898
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
899
+ 'type' => Controls_Manager::COLOR,
900
+ 'selectors' => [
901
+ '{{WRAPPER}} .ha-pricing-table-btn:hover, {{WRAPPER}} .ha-pricing-table-btn:focus' => 'color: {{VALUE}};',
902
+ ],
903
+ ]
904
+ );
905
+
906
+ $this->add_control(
907
+ 'button_hover_bg_color',
908
+ [
909
+ 'label' => __( 'Background Color', 'happy-elementor-addons' ),
910
+ 'type' => Controls_Manager::COLOR,
911
+ 'selectors' => [
912
+ '{{WRAPPER}} .ha-pricing-table-btn:hover, {{WRAPPER}} .ha-pricing-table-btn:focus' => 'background-color: {{VALUE}};',
913
+ ],
914
+ ]
915
+ );
916
+
917
+ $this->add_control(
918
+ 'button_hover_border_color',
919
+ [
920
+ 'label' => __( 'Border Color', 'happy-elementor-addons' ),
921
+ 'type' => Controls_Manager::COLOR,
922
+ 'condition' => [
923
+ 'button_border_border!' => '',
924
+ ],
925
+ 'selectors' => [
926
+ '{{WRAPPER}} .ha-pricing-table-btn:hover, {{WRAPPER}} .ha-pricing-table-btn:focus' => 'border-color: {{VALUE}};',
927
+ ],
928
+ ]
929
+ );
930
+
931
+ $this->end_controls_tab();
932
+ $this->end_controls_tabs();
933
+
934
+ $this->end_controls_section();
935
  }
936
 
937
+ protected function __badge_style_controls() {
938
+
939
+ $this->start_controls_section(
940
+ '_section_style_badge',
941
+ [
942
+ 'label' => __( 'Badge', 'happy-elementor-addons' ),
943
+ 'tab' => Controls_Manager::TAB_STYLE,
944
+ ]
945
+ );
946
+
947
+ $this->add_responsive_control(
948
+ 'badge_padding',
949
+ [
950
+ 'label' => __( 'Padding', 'happy-elementor-addons' ),
951
+ 'type' => Controls_Manager::DIMENSIONS,
952
+ 'size_units' => [ 'px', 'em', '%' ],
953
+ 'selectors' => [
954
+ '{{WRAPPER}} .ha-pricing-table-badge' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
955
+ ],
956
+ ]
957
+ );
958
+
959
+ $this->add_control(
960
+ 'badge_color',
961
+ [
962
+ 'label' => __( 'Text Color', 'happy-elementor-addons' ),
963
+ 'type' => Controls_Manager::COLOR,
964
+ 'selectors' => [
965
+ '{{WRAPPER}} .ha-pricing-table-badge' => 'color: {{VALUE}};',
966
+ ],
967
+ ]
968
+ );
969
+
970
+ $this->add_control(
971
+ 'badge_bg_color',
972
+ [
973
+ 'label' => __( 'Background Color', 'happy-elementor-addons' ),
974
+ 'type' => Controls_Manager::COLOR,
975
+ 'selectors' => [
976
+ '{{WRAPPER}} .ha-pricing-table-badge' => 'background-color: {{VALUE}};',
977
+ ],
978
+ ]
979
+ );
980
+
981
+ $this->add_group_control(
982
+ Group_Control_Border::get_type(),
983
+ [
984
+ 'name' => 'badge_border',
985
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-badge',
986
+ ]
987
+ );
988
+
989
+ $this->add_responsive_control(
990
+ 'badge_border_radius',
991
+ [
992
+ 'label' => __( 'Border Radius', 'happy-elementor-addons' ),
993
+ 'type' => Controls_Manager::DIMENSIONS,
994
+ 'size_units' => [ 'px', '%' ],
995
+ 'selectors' => [
996
+ '{{WRAPPER}} .ha-pricing-table-badge' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
997
+ ],
998
+ ]
999
+ );
1000
+
1001
+ $this->add_group_control(
1002
+ Group_Control_Box_Shadow::get_type(),
1003
+ [
1004
+ 'name' => 'badge_box_shadow',
1005
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-badge',
1006
+ ]
1007
+ );
1008
+
1009
+ $this->add_group_control(
1010
+ Group_Control_Typography::get_type(),
1011
+ [
1012
+ 'name' => 'badge_typography',
1013
+ 'label' => __( 'Typography', 'happy-elementor-addons' ),
1014
+ 'selector' => '{{WRAPPER}} .ha-pricing-table-badge',
1015
+ 'scheme' => Typography::TYPOGRAPHY_3,
1016
+ ]
1017
+ );
1018
+
1019
+ $this->end_controls_section();
1020
+ }
1021
+
1022
+ private static function get_currency_symbol( $symbol_name ) {
1023
+ $symbols = [
1024
+ 'baht' => '&#3647;',
1025
+ 'bdt' => '&#2547;',
1026
+ 'dollar' => '&#36;',
1027
+ 'euro' => '&#128;',
1028
+ 'franc' => '&#8355;',
1029
+ 'guilder' => '&fnof;',
1030
+ 'indian_rupee' => '&#8377;',
1031
+ 'pound' => '&#163;',
1032
+ 'peso' => '&#8369;',
1033
+ 'peseta' => '&#8359',
1034
+ 'lira' => '&#8356;',
1035
+ 'ruble' => '&#8381;',
1036
+ 'shekel' => '&#8362;',
1037
+ 'rupee' => '&#8360;',
1038
+ 'real' => 'R$',
1039
+ 'krona' => 'kr',
1040
+ 'won' => '&#8361;',
1041
+ 'yen' => '&#165;',
1042
+ ];
1043
+
1044
+ return isset( $symbols[ $symbol_name ] ) ? $symbols[ $symbol_name ] : '';
1045
+ }
1046
 
1047
  protected function render() {
1048
+ $settings = $this->get_settings_for_display();
1049
 
1050
+ $this->add_render_attribute( 'badge_text', 'class',
1051
+ [
1052
+ 'ha-pricing-table-badge',
1053
+ 'ha-pricing-table-badge--' . $settings['badge_position'],
1054
+ ]
1055
+ );
1056
 
1057
+ $this->add_inline_editing_attributes( 'title', 'basic' );
1058
+ $this->add_render_attribute( 'title', 'class', 'ha-pricing-table-title' );
1059
 
1060
+ $this->add_inline_editing_attributes( 'price', 'basic' );
1061
+ $this->add_render_attribute( 'price', 'class', 'ha-pricing-table-price-text' );
1062
 
1063
+ $this->add_inline_editing_attributes( 'period', 'basic' );
1064
+ $this->add_render_attribute( 'period', 'class', 'ha-pricing-table-period' );
1065
 
1066
+ $this->add_inline_editing_attributes( 'features_title', 'basic' );
1067
+ $this->add_render_attribute( 'features_title', 'class', 'ha-pricing-table-features-title' );
1068
 
1069
+ $this->add_inline_editing_attributes( 'button_text', 'none' );
1070
+ $this->add_render_attribute( 'button_text', 'class', 'ha-pricing-table-btn' );
1071
 
1072
+ $this->add_link_attributes( 'button_text', $settings['button_link'] );
1073
 
1074
+ if ( $settings['currency'] === 'custom' ) {
1075
+ $currency = $settings['currency_custom'];
1076
+ } else {
1077
+ $currency = self::get_currency_symbol( $settings['currency'] );
1078
+ }
1079
+ ?>
1080
 
1081
+ <?php if ( $settings['show_badge'] ) : ?>
1082
+ <span <?php $this->print_render_attribute_string( 'badge_text' ); ?>><?php echo esc_html( $settings['badge_text'] ); ?></span>
1083
+ <?php endif; ?>
1084
 
1085
+ <div class="ha-pricing-table-header">
1086
+ <?php if ( $settings['title'] ) : ?>
1087
  <?php
1088
  printf(
1089
  '<%1$s %2$s>%3$s</%1$s>',
1090
  ha_escape_tags( $settings['title_tag'] ),
1091
  $this->get_render_attribute_string( 'title' ),
1092
+ ha_kses_basic( $settings['title'] )
1093
  );
1094
  ?>
1095
+ <?php endif; ?>
1096
+ </div>
1097
+ <div class="ha-pricing-table-price">
1098
+ <div class="ha-pricing-table-price-tag"><span class="ha-pricing-table-currency"><?php echo esc_html( $currency ); ?></span><span <?php $this->print_render_attribute_string( 'price' ); ?>><?php echo ha_kses_basic( $settings['price'] ); ?></span></div>
1099
+ <?php if ( $settings['period'] ) : ?>
1100
+ <div <?php $this->print_render_attribute_string( 'period' ); ?>><?php echo ha_kses_basic( $settings['period'] ); ?></div>
1101
+ <?php endif; ?>
1102
+ </div>
1103
+ <div class="ha-pricing-table-body">
1104
+ <?php if ( $settings['features_title'] ) : ?>
1105
  <?php
1106
  printf(
1107
  '<%1$s %2$s>%3$s</%1$s>',
1108
  ha_escape_tags( $settings['features_title_tag'] ),
1109
  $this->get_render_attribute_string( 'features_title' ),
1110
+ ha_kses_basic( $settings['features_title'] )
1111
  );
1112
  ?>
1113
+ <?php endif; ?>
1114
+
1115
+ <?php if ( is_array( $settings['features_list'] ) ) : ?>
1116
+ <ul class="ha-pricing-table-features-list">
1117
+ <?php foreach ( $settings['features_list'] as $index => $feature ) :
1118
+ $name_key = $this->get_repeater_setting_key( 'text', 'features_list', $index );
1119
+ $this->add_inline_editing_attributes( $name_key, 'intermediate' );
1120
+ $this->add_render_attribute( $name_key, 'class', 'ha-pricing-table-feature-text' );
1121
+ ?>
1122
+ <li class="<?php echo esc_attr( 'elementor-repeater-item-' . $feature['_id'] ); ?>">
1123
+ <?php if ( ! empty( $feature['icon'] ) || ! empty( $feature['selected_icon']['value'] ) ) :
1124
+ ha_render_icon( $feature, 'icon', 'selected_icon' );
1125
+ endif; ?>
1126
+ <div <?php $this->print_render_attribute_string( $name_key ); ?>><?php echo ha_kses_intermediate( $feature['text'] ); ?></div>
1127
+ </li>
1128
+ <?php endforeach; ?>
1129
+ </ul>
1130
+ <?php endif; ?>
1131
+ </div>
1132
+
1133
+ <?php if ( $settings['button_text'] ) : ?>
1134
+ <a <?php $this->print_render_attribute_string( 'button_text' ); ?>><?php echo esc_html( $settings['button_text'] ); ?></a>
1135
+ <?php endif; ?>
1136
+
1137
+ <?php
1138
+ }
1139
  }