GithubHelp home page GithubHelp logo

staxwp / visibility-logic-elementor Goto Github PK

View Code? Open in Web Editor NEW
8.0 4.0 3.0 415 KB

Display Elementor widgets/sections based on various conditions like User Role, User Meta, Date & Time and many more.

Home Page: https://staxwp.com/visibility-logic-for-elementor/

License: GNU General Public License v3.0

PHP 85.32% CSS 6.40% JavaScript 7.76% SCSS 0.53%
wordpress-plugin wodpress

visibility-logic-elementor's Introduction

=== Visibility Logic for Elementor ===
Contributors: staxwp, kierantaylorio, codezz, rtynio, geowrge
Tags: elementor, elementor restrictions, elementor conditions, elementor widgets, visibility logic, widget conditions
Requires at least: 5.0
Requires PHP: 7.0
Tested up to: 6.2
Stable tag: 2.3.5.1
License: GLPv2 or later

Show/hide Elementor widgets or sections based on user role, user meta, user logged in or not and many more.

== Description ==
Show or hide Elementor widgets or sections based on various conditions like: User is logged in, User has a specific meta, The day is Wednesday, The time is between X and Y, The user is using Firefox browser, and many more.

The visibility settings will only affect widgets rendering in the frontend. While you are inside Elementor editor you will be able to see all of them.

= Free Features =
- NEW - Flex container visibility restrictions support
- User Meta content restriction
- Restrict content based on User Browser (Chrome, Mozilla, Safari, etc)
- Date & Time restrictions for content
- Hide a whole section if all widgets inside it are hidden using visibility settings (Works with nested sections/containers too)

= PRO Features =
- Geo Location - Use MaxMind to dynamically display elements based on user's country.
- Dynamic conditions - Restrict Elementor widgets and sections based on all Elementor Pro Dynamic tags.
- WooCommerce Users - Restrict based on user's order/subscription
- Easy Digital Downloads Users - Restrict based on user's order/subscription
- Advanced User Meta - Support for multiple user meta conditions with And/Or condition.
- Post & Page, Taxonomy, URL Parameter content restriction.
- Archive restrictions based on Post types and taxonomies.
- IP & Referrer restrictions.
- WordPress Conditional Tags restrictions.
- Fallback - Allows you to replace a hidden element with a text message or an Elementor template.
- Copy/Paste visibility settings between widgets or sections by right-clicking an element.

Find more about our [Pro version](https://staxwp.com/go/visibility-logic).

Other restriction options to come. Suggestions are welcomed. 

Here is how you will find the Elementor visibility restrict settings:
1. Open a page with Elementor
2. Go and select any widget from the page
3. Go to Advanced - Visibility control
4. Here you will find the restriction settings for your element.

= More from StaxWP =
- [BuddyBuilder - BuddyPress Builder for Elementor - Plugin](https://staxwp.com/go/buddybuilder)
Create stunning communities on your site powered by Elementor and BuddyPress
- [Elementor Addons, Widgets & Enhancements - Plugin](https://staxwp.com/go/addons-for-elementor)
Powerful Elementor widgets to help you build stunning pages
- [Woo Addons for Elementor - Plugin](https://staxwp.com/go/woo-addons-for-elementor/)
Elementor enhancements for Woocommerce to help you build awesome e-commerce sites

= Privacy Policy =
We use Appsero SDK to collect some telemetry data upon user's confirmation. This helps us to troubleshoot problems faster & make product improvements.

= Found a bug? =
You can report security bugs through the Patchstack Vulnerability Disclosure Program. The Patchstack team help validate, triage and handle any security vulnerabilities. [Report bug](https://patchstack.com/database/vdp/visibility-logic-elementor).

== Installation ==

1. Upload the plugin to your 'wp-content/plugins' directory
2. Activate the plugin
3. Edit a page using Elementor
4. Select an existing element or add a new one.
5. Go to Stax Visibility tab.
6. Enable conditions and set your restrictions for the Elementor widget or section.
7. That is it :)

== Screenshots ==

1. Visibility Logic for Elementor - Enable conditions for widget.
2. Visibility Logic for Elementor - Restrict widget/section by user role.
3. Visibility Logic for Elementor - Restrict widget/section by user meta.
4. Visibility Logic for Elementor - Restrict widget/section by date and time. Show content at a certain date.
5. Visibility Logic for Elementor - Restrict widget/section by browser used.
6. Visibility Logic for Elementor - Admin Panel

== Changelog ==

= 2.3.5.1 =
* Update readme.txt to include patchstack.com report bug link

= 2.3.5 =
* Add extra security checks when saving plugin options.

= 2.3.4 =
* Upgrade Appsero SDK

= 2.3.3 =
* Fix Elementor deprecation warnings

= 2.3.2 =
* Fix Datetime render

= 2.3.1 =
* Add support for Elementor's experimental containers

= 2.2.9 =
* Fix user meta when selecting data from the user table; eq. email.

= 2.2.8 =
* Fix require plugin message display in admin page

= 2.2.7 =
* Register query control - use to register_control method for previuous Elementor versions compatibility.

= 2.2.6 =
* Fix state markers for applied options in Elementor editor
* Add support for new Pro options

= 2.2.5 =
* Fix css render for hiding sections

= 2.2.4 =
* Added new variation for Date & Time option - Weeks Days + Time
* Fixed a bug on Date & Time option where server time was not fetch correctly. fixed date-time condition over midnight
* Tested on WP 5.9
* Improved admin UI

= 2.2.3 =
* Fix error when using Elementor version older than 3.3.0

= 2.2.2 =
* New Section option: Hide section when all the widgets inside it are hidden
* Fix printed styles for hidden elements of the same type.

= 2.2.1 =
* Added extra compatibility with Visibility Logic Pro older versions

= 2.2.0 =
* Added Enabled/Disabled icons on all sections to inside Stax Visibility tab to see at a glance which options are in use.
* Added Dynamic conditions based on all Elementor Pro Dynamic tags (in PRO version)

= 2.1.7 =
* Date and time conditions UI improvement to show current server time in editor

= 2.1.6 =
* Fix Section restriction when used with Hide HTML option
* Fix integration with Paid Memberships Pro plugin for section restrictions

= 2.1.5 =
* Improved logic and fixed Condition type when set to "At least one" to match the restrictions

= 2.1.4 =
* Improvement: Added AJAX control for User meta select to improve editor speed
* Fix Fallback text so it shows correct escaped HTML

= 2.1.3 =
* Moving from version 1.2.0 is won't change anything on your site. We added safe fallback settings for older setting from v1. Old settings are now being taken into consideration and are available in the Widget settings. You can switch to nee new settings if you like or just leave those in place.

= 2.1.2 =
* Added more User meta conditional operators
* Added icon next to Widgets and Sections with conditions enabled in Elementor editor
* Admin settings page improvements

= 2.1.1 =
* Update migration logic to be less memory demanding

= 2.1.0 =
* New free feature : User Meta content restriction
* New free feature: Restrict content based on User Browser(Chrome, Mozilla, Safari, etc)
* New free feature: Date & Time restrictions for content

= 2.0.3 =
* Old settings migration logic update for inner elements.

= 2.0.2 =
* Make the settings migration automatic on plugin update.

= 2.0.1 =
* Fix PHP version compatibility in Updates logic

= 2.0.0 =
* Code logic refactoring and introducing Pro features.

= 1.2.0 =
* Fixed the edge case when you combined hiding elements for guests and user role

= 1.1.0 =
* Made the selectors full width since there was a bug with Select2 control

= 1.0.4 =
* Made changes to the hiding logic and the element is fully hidden, no extra empty wrapping divs shown

= 1.0.3 =
* Visibility settings added for Section

= 1.0.2 =
* Added translation pot file

= 1.0.0 =
* Initial release

= Be a contributor =
If you want to contribute, go to our [GitHub Repository](https://github.com/seventhqueen/visibility-logic-elementor).

You can also add a new language via [translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/visibility-logic-elementor).

visibility-logic-elementor's People

Contributors

codezz avatar dependabot[bot] avatar geowrgetudor avatar ronaldaug avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

visibility-logic-elementor's Issues

Conditions based on groups

This option would be great in order to mix roles and groups. For example, I have a role 'user' and the user can belong to 2 different groups 'active' & 'passive' and it would be great to grant or not access to certain content based on groups. Same kind of logic like categories and tags for posts.

Proposal: JavaScript-driven User Role Visibility Allowing Full Page Caching

Introduction:
The existing functionality of the Visibility Logic for Elementor plugin does not support full page caching for logged-in users. We currently make extensive use of your plugin for dynamic user-role based element visibility. This limitation significantly slows down page load times for logged-in users. The necessity for a faster user experience for logged-in users has led to this feature request.

Objective:
The primary goal is to allow dynamic user-role based elements on pages while still enabling the entire HTML page to be cached, even for logged-in users. This enhancement will markedly improve page load times for logged-in users.

Implementation Solutions:

  1. Inferior Solution: An XHR request could be made via JavaScript to the server to determine the user's role on page-load. Following this, JavaScript would rewrite the CSS or HTML to show or hide elements based on the server's response.

  2. Superior Solution: Utilize the user's WordPress cookies to ascertain the user role and have the HTML or CSS rewritten at runtime based on the cookie. This approach is more efficient and streamlines the process without the need for additional server requests.

Offer for Development:
We are open to funding the development of this feature to expedite the process and ensure its successful implementation.

Contact Information:
Please feel free to reach out via GitHub or email wordpress at growthlab dot agency to discuss this feature request further.

Visibility logic conditions based on request parameters do not seem to properly work if the value field is blank

Replication Steps:

  1. Add a section within a page as well as some content to it
  2. Apply visibility conditions to the section such as:
    General
    -"Hide"
    -"At least One"
    Dynamic Conditions
    Dynamic Tag: Request Parameters
    Type: Get
    Parameter name: A search parameter within your site
    Condition: Is empty
  3. Save your changes
  4. Carry out an empty search on your site (no value passed)

Output

The section is not hidden from view.

Desired Output:

The section should be hidden from view since no value is passed to the parameter name.

Screencast:

https://recordit.co/33omEUTRiB

Critical Error After Updating Latest version 2.2.5

Hi
after update latest version 2.2.5 my client website was complete down and showing Message There has been a critical error on this website so i was deactivate Visibility Logic for Elementor Plugin my site back to normal so pls quickly update plugin

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.