Divi Display Logic


Add to Wish List

Billed once per year until cancelled

Live Preview Screenshots Watch Intro

***Read the exemplary Elegant Themes review and tutorial! here***

The revolutionary and original plugin for conditional logic in Divi, allows you to add logic/conditions (as many as you like!) to be used with any Divi element (module, child module, section, row). The plugin is incredibly easy to use in the Divi Visual Builder.

  • Ever had to remember to add a sale banner to your site at a certain time?
  • Want to show different slides in a slider module to different users or at different times?
  • Want to show different items in pricing table modules based on time or status?
  • Ever had to get up early to change time sensitive content?
  • Ever wanted to show a specific message to new users?
  • Read on!

Simply put, you can decide when any of your content is shown and to whom based on any number of conditions you can set (or write yourself). The easiest example is differing content for logged in and out users but it doesn’t stop there.. you can show content based on date/time, location, user role, environment or anything else.

There are a number of pre-set examples and a polished interface to make using this plugin very easy indeed.

On activating the plugin you will see a new interface inside the Divi Visual Builder  ‘Advanced’ tab. Look at the Custom Class/ID tab and you will notice a handy on/off switch to manage the logic/conditions. Inside the popup you will find full instructions and some handy controls to get the logic you want.


You might be thinking now “great idea but how would I use it??‘. Here’s a few examples we’ve had so far from the community!

  • Show logged in or out slides in a slider module or schedule them to show/hide
  • Show a marketing homepage to logged out but show handy links/articles to those logged in
  • Create a simple teaser/locked content section based on a query string variable, post item, session variable or cookie!
  • Show members only content based on WordPress capability or role.
  • Show content to users in their language?
  • Use a pricing table but show certain prices to users based on their logged in/out status or the time/date
  • A restaurant business may wish to show the breakfast menu in the morning but the evening menu in the afternoon
  • An eCommerce store may wish to show documentation and post-purchase links to those who are logged in or have purchased (custom php filter)
  • Show an article or page to those who have signed up to a mailing list (custom php filter)
  • Show offers or holiday wishes on a per country basis..
  • Show adverts and offers only once – resetting every 30 days or so (configurable)
  • Hide your local offers to those who don’t live in the same city
  • And many more!

Examples Built-In

Out of the box there are LOTS of pre-defined conditions you can use. These range from the most basic show/hide based on logged/out status to something more complex like show/hide based on date/time constraints. See below for the full example list included the plugin:

  • SHOW this content on Christmas Eve 2017
  • HIDE this content on New Years Day 2018
  • SHOW this content to a specific user ID or several user IDs
  • SHOW the content for ONLY the 16th August 2017 (Sean’s Birthday!)
  • SHOW this content on Mondays ONLY
  • SHOW this content at 3pm and hide at 4pm
  • HIDE this content on Weekdays
  • SHOW this content if the current page has the category “News”. Note: term uses the slug
  • HIDE this content if the user IS logged out
  • HIDE this content if the user IS logged in
  • SHOW this content is a specific item is in the querystring (with optional value match)
  • HIDE this content is a specific item is in the querystring (with optional value match)
  • SHOW this content is a specific item is in the post array (with optional value match)
  • HIDE this content is a specific item is in the post array (with optional value match)
  • SHOW this content is a specific item is in the session (with optional value match)
  • HIDE this content is a specific item is in the session (with optional value match)
  • SHOW this content is a specific item is in the cookie array (with optional value match)
  • HIDE this content is a specific item is in the cookie array (with optional value match)
  • SHOW this content if the user has the Editor role
  • HIDE this content from users with the Subscriber role
  • SHOW this content if the user has the capability “view_content” (example. add your own)
  • SHOW this content if the user is in the UK or France
  • HIDE this content if the user is in the USA
  • SHOW this content to users if their language is English or German
  • HIDE this content to users if their language is French
  • HIDE this content after showing it only once (adverts/offers)
  • SHOW this content if the user is in the city of Chester, UK
  • HIDE this content if the user is in the town of London, UK
  • SHOW this content to user if PHP add_filter() returns true (advanced!). Supports up to 3 optional arguments.
  • HIDE this content from user if PHP add_filter() returns true (advanced!). Supports up to 3 optional arguments.

All of the built in examples can be edited. They are simply included to get you started. The date/time picker pre-fills the dates for you to minimise editing and the rest of the conditions are straightforward to edit to suit your needs.


Any encapsulating shortcode will work (one with a start and end tag) if you prefer to work directly with the shortcode. As long as the encapsulating shortcode alters the $content variable passed to the function based on your own condition this will work. To make things easier though you may prefer to use the built in add_filter example as it gives context to your shortcodes and allows you to add optional arguments which make it easier to read.

You’ll also find the ‘dss_prefill_options’ filter handy as it will pass the post type and an empty string for you to edit. This will allow you to add your own “option” html tags to the pre-defined logic dropdown. Just make sure that your shortcode is the “value” attribute and the plugin will do the rest!

Add to Wish List

Billed once per year until cancelled


  1. Daniel Stadeli

    This seems to cover almost everything that the if-so plugin offers, BUT one thing I need is the possibility to show a popup only to first time visitors. It will be a quiz that they will only see once. Is this possible?

    Or if I could save the information that they have taken the quiz and show the popup as long as they have not taken it, that would also be great. I do not want to create a user in the database though.

  2. Quentin Cotillard

    This product is great but unfortunately it is not compatible with the Divi library. If you create a layout with a display logic and add it as a library, anytime you try to apply that layout Divi strips the entire row.

  3. matric

    Hi, two pre-sale question:

    1) Our site is build with DIVI 2.x. Is this plugin also compatible with this or is there any older compatible version?

    2) Can conditions also be set for whole pages?

    Thanks & regards!

  4. Rangel

    Impressed by the possibilities. Is the plug 100% compatible with the newest WordPress version 5.4? and Divi Version: 4.4.2? With its plug I can program zeroed counters to be replaced by new counters with new deadlines?

  5. rxcfirst

    Hi Sean

    Got a technical pre-sale question. Is the following achievable with Display Logic, if not, do you know of any workaround?

    For example:

    front-end user fill out a form entry via formidable form:
    “name” “age” “checkbox:checked” “date of entry”

    back end formidable form can dynamically display field values in query url page


    with shortcode like [frm-field-value field_id=x entry=pass_entry]

    this would work very well with text field such as “name”

    The questions is how to achieve following?

    hide section if age is under 20

    hide section if checkbox is checked

    hide section if more than 30 day passed “date of entry”

    In other words, will 3rd party shortcode work as conditions? I don’t fully understand your shortcode description in feature page.

    If it does work, any chance of having date calculations? or simple calculations?

  6. Eric Gracieta

    Hi, i cant make it work with last version of divi, is that normal ?

  7. visualanimal

    I have bought plugin but it says “License is not Active”. Could you help me? I can not write support section because it doesn’t accept license too.

  8. George Tsoulouhas

    Is this still not working with the “new builder experience”? Thanks!

  9. Levent

    A small addendum: Even with the Classic Editor activated, I can’t find any more settings for Divi Display Logic. :/

  10. Levent

    [* Shield plugin marked this comment as “SPAM”. Reason: Whoops. Google reCAPTCHA was not submitted. *]
    Where is the promised VB support? 😉 Wish you all a merry christmas and a happy new year. (:

  11. Merit IT

    Is the new version still expected to be out this year? Will that work with the “new builder experience”? Thanks!

  12. Kevin Weiers

    Also, how complex can these short codes be? Can I have multiple conditions.

    For example: show on Fridays at 08:00 hide Fridays 09:00 show Saturdays 16:30 hide Saturdays 17:30

    Multiple days/times on and off points in one shortcode?

  13. Kevin Weiers

    is there a list of all short codes so I don’t have to scrub through the drop down? For example, I want to do a:
    [dss_content time_show=’14:02′ time_hide=’15:05′]
    But only on thursdays…

    will that work?

  14. Dennis

    Hi, when will this good plugin be working in the “front-end”-Builder? missing that 🙁

  15. Scott

    Will this plugin work with the Divi Builder plugin (not using Divi theme)?

  16. Yan Giroud

    Hi !
    I tried to undergrade to Classic Builder, but then I have a lot of bugs on me web site.

    When can we expect this plugin to be fixed for the up-to-date Builder ?

  17. Eric

    Working on a restaurant site. I have two different background videos for the top fullwidth section. One is syrup running over pancakes and the other is of hamburgers on the grill. I want to show one during breakfast and the other mid-morning for the rest of the day. Can this plugin work to change the background video of a full-width section?

  18. Martin Bissig

    I still got the problem that on my site it’s displayed

    sb-shortcode-controlledlass=”et_pb_section et_pb_section_2 sb-shortcode-controlled et_section_regular”>

    which look ugly and it’s confusing for the client as well. Any chance to fix this?

  19. Russ

    I am looking for a solution for a restaurant owner so he can enable a temp “sorry we are closed now” message on the site when he closes early.
    So for example, it could be set to display only between 5pm-10pm today

    Will it do this?
    Also, will it still work with caching enabled?

  20. Gilberto.Carvalhais


    is possible with the Divi Display Logic to: show login user – select users roles

    best regards

  21. Ryan Rabah

    Hello! I purchased, installed, activated and input the license key, and there is no Display Logic on anything. I checked sections, rows & modules. I read in a comment that it doesn’t work with visual builder, but there is still no display logic on the backend anywhere.

    • Andrew Palmer

      You may need to activate classic builder in divi>options>builder – You should see it there.

  22. Julius Molnar

    Hi, we would like to purchase this plugin.
    we want to use it for weekly changing food menu in combination with WPML.
    Is it possible to use this plugin for 6 different languages the same time, where the menu will change?



  23. Tanner Sifferath

    Hello – I just purchased this plugin and it seems to be working great on the Divi section that is enabled for desktop view, but on the section that is only enabled for mobile, it will not hide that section at the time specified in the Divi Display Logic plugin. Any insight? My mobile device and desktop would be in the same timezone so I don’t think that would be an issue… This is the shortcode I am using for both: [dss_content day_show=’1,2,3,4,5′ time_show=’8:30′ time_hide=’17:20′]

  24. Alain Delmont

    Hey there,

    do not buy this plugin, it cause a big problem on WordPress… It change the time of the wordpress. For me it add one hour on my wordpress, and i have event on it, so my customers came one hour late to my event…

    I try to contact the developper since 3 Weeks… I have NO ANSWER !

    Go away fast !!! 🙂

    • Andrew Palmer

      The plugin uses your server time to calculate the time of the display. The instructions do say this quite clearly and its working for over 2,000 users quite correctly as long as you ensure your server time is used as the base time. It is highlighted at 7 mins in this video which is also accessible via the product page. https://youtu.be/vg6v3ZF8K8M

      • Alain Delmont

        Our server is at GMT+1, it has been like that for years with many clients using wordpress on this server. So i don’t understand why with your plugin we have this problem.

        We finaly find a solution :
        I found this function that is not recomanded by many developpers :
        date_default_timezone_set( $timezone );

        I replace it by this one : current_time( $timezone )

        And it works !

        I would have appreciated that the solution came from you…

        • Andrew Palmer

          Glad you got it sorted. However, the code you replaced was exactly as described in the description as default time of the server. I will make a suggestion to the vendor and see if they can change it to make it current time.

  25. Daniel Braz

    Hello good afternoon. I purchased the plugin, however the same did not work the way I expected and can not use it on my site. I understand that being a product of downloading the refund is difficult, but I would be very grateful if you could reimburse me, because I will not really use the plugin. From now on.

  26. Yan Giroud

    Hi Sean,
    I’ve purchased the plugin, installed it, entered the licence key in the Display Logic menu item, entered the website URL in the Elegant Marketplace dashboard, the but the “Display Logic” part remains invisible in the Content tabs of Sections, Raws and Modules (in the Classic Divi Builder).

    Any idea why ?

    • Yan Giroud

      Hi Sean,
      Is there a way to have a reply about my message. Your plugin still doens’t work on my web site.

  27. Jürgen

    Great Plugin! Does it also work with the visual Builder? I cannot see the Display Logic Options there…

    • Michael

      The only way I have found to get the plugin to work with the new divi is go into the ‘Advanced’ settings for the required module, then ‘CSS ID & Classes’, then in the ‘css class’ window, insert the code in the correct format. In my case this is:
      [dss_content date_show=’Mon Jan 21 2019′ time_show=’12:0′ date_hide=’Fri Feb 01 2019′ time_hide=’12:0′]

      The codes for other functions should be available on the developers website.

  28. Ingo Neumann

    Hi there,

    i have a question regarding logic: Is it possible to use for (hope you’ll understand what I wanted to ask :-):
    If a user comes from a page i.e. offers and the , link guides him to an article I need to show a form.
    If a user comes from a different page than offers I need to show a calendar insteasd of the form.
    In words: Is the plugin able to recognize which links was clicked before?

    Thnx a lot and best regards,


  29. Luis Miguel Cololorado Pérez


    The last Divi theme says that this plugin is no longer compatible with the builder. Any fix for that?


    • Andrew Palmer

      You will need to use the Divi Classic builder to take advantage of this plugin. The vendor is working on a VB fix.

  30. Pamela Rubio

    This plugin keeps breaking my site. Whenever I try putting in a shortcode and save, the homepage disappears. Then when i try to go back to the dashboard, i’m getting a 500 internal error. I have to delete the app via FTP to get my website back.

    • Andrew Palmer

      This looks as though it’s a memory issue. Try upgrading php. Or increasing memory via WP config.

  31. Damien

    HI, this is a really fantastic plugin, but I need to find out if I can specify by region_name? I ask because specifying by city is too specific because ip cities (at least in Australia) give all kinds of values, so just targetting say… SYDNEY wouldn’t work. I’d need to target the region_name of NSW instead.

  32. Luke Amoresano

    This plugin is super cool. I just used it to create a custom menu for affiliates on their dashboard that I did not want revealed to people visiting the dashboard that are not logged in affiliates – awesomesauce!

  33. Mikael Vinding

    I’m looking all over for a plugin that does exactly this but plays nice with Restrict Content Pro.. basically let you show / hide divi modules based on RCC. Is there any way to integrate the two?

  34. Matthew Reynolds

    Hi – I just bought this and it works fine – but the default choices seem to restrict conditional content to show/hide according to only a single user role. Is that right? You cannot set it to display 1 module to multiple user roles like role=subscriber,editor,admin??

    • Matthew Reynolds

      Sorry – it can, I saw the earlier reply and tested it, seems fine with multiple roles separated by comma

  35. Emilio Achar

    Hi Sean, I have a question regarding the plugin capabilities.

    Can the plugin let me show a chat support the the user enter his client number or his name ( this can be on a database
    ) info in a form above so it only give support to users that are on a list.

    Thanx in advance.

  36. Greg Smith

    Just bought this and it isn’t working. I’m trying to hide global sections when logged in, not logged in, to certain roles etc. and it’s all acting strangely.

    It basically doesn’t show the module properly and it’s outputting the following code on the page:

    sb-shortcode-controlledlass=”et_pb_section sb-shortcode-controlled et_pb_section_7 et_pb_with_background et_section_regular”>

    Any help appreciated.

    • Robin

      I’m having this same problem. Some help would be appreciated.

      • Martin Bissig

        Same problem here. Any idea how to fix this?

        • Andrew Palmer

          Recent changes to Divi may have affected it’s operation. Happy to refund however, if you put in a support request the vendor will help you configure it I am sure.

  37. basvanbreda

    Hey Sean!

    great plugin by the looks of it! I’m very curious about the following; is it possible to show content based on the UTM source in the link? This is specific for one client with multiple sites. They want one privacy statement website which is linked to from different companies inside their group. There it will show the correct logo and text about the privacy statement etc… concerning the company site they came from.



  38. loic23601


    I display a custom field on a page. Is it possible to do “hide if custom field is empty ” ?
    If yes, witch code i need to use ?

    Thank you very mutch for your answer !

  39. Clinton dos Santos


    I am unable to update this plugin, not FIA wordpress themes ot even FTP. Any assistance would be welcomed

    • Andrew Palmer

      We understand that there is an issue with Divi update.php which affects other plugin and theme updates as well. Please may I ask you to either login to your account and download and install the latest version or try turning off divi theme to another theme and then updating in your plugin area.

  40. medicsh

    Hello, can this support logic per user ID? We use DIVI for our company and use the User Restrict Content plugin within a text module to display Gforms and Gviews per ID, but would be much better if we could organize in separate DIVI rows. Is this possible?

      • medicsh

        I am perfectly ok with that. At least each section can have a title identifying which client it belongs to. Currently, I use one text module and the display of such is moved down with empty space above it since it hold data that is hidden but the space still exists. Your solution is much better. Are there additional instructions or can you provide instructions here. As soon as I see support on how to do I will purchase your logic function immediately. We use Divi and it is amazing. Sky is the limit for sure with this theme and your plugin will certainly help I believe.

      • medicsh

        Hey Sean, I left a comment eleven (11) days ago. Can you provide pre-support. I’m sure others are curious of this as well. Please see my other comment. Thank you.

        • Sean Barton

          Sorry about the late reply. As it stands you can now do this built in with V1.8 using the user_show filter.


          • medicsh

            Purchased… What am I doing wrong? Here is what I have set.
            [dss_content show_custom_filter=’user_show’ filter_arg_1=’1′ filter_arg_2=’13’]

  41. TBG

    Hi Sean,

    this plugin might just be what I was looking for 🙂
    Just a question though:
    Say I have 1 row with 4 columns and 8 pictures (8 modules)
    pic1 – pic2 – pic3 – pic4
    pic5 – pic6 – pic7 – pic8

    And I put the logic on them to show them now, but hide them from a certain date.
    For example: hide pic1 starting Feb. 6th

    Then will pic2 move to the left, or will pic5 move upwards?

    And I’m guessing this only counts if they are in the same row?
    For example pic1 to pic4 is in one row, and pic5 to pic8 is in another row. When pic1 gets hidden, will it leave an empty (blank) space?

    Thanks very much!

    • Sean Barton

      Hey there, I think you’re right…same row items will move to the left. If they are all in the same column then the modules will move up, But either way it will work a treat for you.

  42. Roberto

    Hi, Sean!
    Looking at the source code of your plugin I noticed that when filtering by user roles I can only show or hide an element specifying one single role.

    I would like to suggest a slight code modification so that the “if” statement (at about line 236)

    if ($role == $atts[‘show_role’]) {
    $hide = false;


    if ( in_array( $role, array_map(‘trim’, explode(‘,’, $atts[‘show_role’] ) ) ) ) {
    $hide = false;

    With this minor modification, I am able to specify multiple roles, separating them with commas, at the same time (e.g.: show the section if the user has one of “editor”, “author” or “administrator” roles).


  43. Charl Asuit

    I just bought this and activated it on a site so I can schedule some updates. However, when I try to edit the page, a message pops up saying:

    Divi Builder Timeout – Oops, it looks like the Divi Builder failed to load. Performing the following actions may help solve the problem.

    1. You are using third party plugins. Try disabling each plugin to see if one is causing a conflict.

    And presents a button to manage plugins. It also presents a ‘Reload the Builder’ but does nothing.

    Can you please help and advise?

    • Alejandro Cadena Romero

      The same happens to me. During Saturday and Sunday I was making tests and looked to work very well. Those test were made in the US , Colombia Guatemala and Great Britain. Today, I did some test and the plugin is not not working. I found out that there are two ways to edit the shortcode, id you wnat to show your content in UK, but none of them works
      [dss_content country_show=”GB”]
      [dss_content country_show=’GB’]

      Please, I need your Support ASAP. Monday next week we are going to launch our website and we need to make tests before going live.

  44. Ethan Lessiter

    Where do we redownload the plugin as mine seems stuck on v1.4?

  45. Scott Evans

    Can it restrict multiple user roles, or a “Group” of users? All the doc info references “by user” singular, not plural.

    • Sean Barton

      Yep it can do by role. Just comma separate the list and it’ll show/hide if they have one of them.

  46. Lauri

    great plugin. Is there possibility to use these with your navigation items ?

  47. Mark Smith

    Hi Sean

    The WP Rocket code you provided does not exclude modules from being cached.

  48. Jonathan Ball

    Hey Sean, sweet plugin. Do you have a canned custom filter we can use as a stub function?

    • Sean Barton

      Not yet but I’ll work something up and add it to the product page as an example for you asap

      • Cynthia Barlow

        I could really use this example if it’s still something you’re planning… or I’m missing it in the documentation somewhere.

  49. Nicolai

    Hi Sean

    Your plugin looks very interesting and I can’t wait to test it out.

    My main usage will be for an international site where we want to show different content to users based on their country,
    Today we use Cloudflare and they send along some Geo data on the user:

    Will Cloudflare work with your plugin? Can it use the Geo location data from Cloudflare or must I use some other database?

    Also how about caching? We use WP Rocket. I see you have some code specific for WP Rocket, but I cannot see anywhere, how the plugin works with caching and how much is cached. Optimally I would want country specific caching for my use 🙂

  50. Luis


    Is there any way to set up it in a form module and hide by date? I.E. Form avaliable until “x” date.


  51. Kim Furletti

    Hi there,

    I’m working on site where there are events going on in 2 locations. Would I be able to use this to have users select their location, then show the content for the location they’re chosen?


    • Sean Barton

      Hi Kim,

      In theory.. It’s not a built in piece of functionality and it would require a page load to do it but you could ask a user where they are based/interested in and set a cookie in PHP.. this could be done using a simple shortcode and form.. maybe 30 lines of PHP code, quite straightforward. And then based on a cookie value you could show the section relevant.

      Drop me a ticket if you want to go over it pre or post purchase no problem..


      • Kim Furletti

        Thanks, Sean. Will put a ticket in. I did purchase the plugin, and got as far as figuring it was something along the lines you described but it’s a bit beyond my expertise.

  52. Bojidar NIkolov


    I need the plugin for the following:

    I need to show a module or a section, only when user first time visits site. May be this should be based on a cookie expiry or something like that. Best way is to have the option for expiry period, so after a month for example, module/section should show to the user again.

    Can something like this be accomplished with your plugin?


      • BOZHIDAR


        Thanks! We bought the plugin. Which option should we use, and how exactly?

        Is there some documentation?


        • Sean Barton

          Hi BOZHIDAR

          If you download version 1.5 you’ll notice a new filter which does this. It’s called ‘SHOW this content only once. Show again after 30 days’.


  53. Francesco

    Hi, I use Advanced Custom Field and I need to display some modules when I select a value in an ACF checkbox. This plugin permit me to do that?

    • Sean Barton

      Not on the same page load no sorry. This is for showing/hiding content based on persistent settings… time, role, location etc.. I think you’re looking for JS/CSS conditional logic instead

  54. Mike Gutzschhahn

    Marvelous! This plugin adds a bunch of new possibilities and works like a charm with the WP Members Plugin.

    Thanks a lot for this great piece of work

  55. irep

    Can we set a full width Title Divi module so that it shows up only once per session ? Example: Divi’s Full width title with full width image background are superb. It invites visitors to scroll down or click an down arrow button to see more details about the subject we are dealing with. If the same user is to come several times to this page, he can feel that the gorgeous full width module becomes… cumbersome. It would be nice to collapse the full width module (and to replace it by a smaller visual intro) if visitor has seen it already.
    Thank you.

  56. Luis Villarreal

    Hi! Awesome plug ing

    I tried to modify the PHP to get the username from the current logged in user and add a condition to show the content if X user is logged in…

    My code:

    ***code removed by admin***

    And the condition would be: [dss_content show_username=’X’]

    But its not working 🙁 do you know what parameters could be used other than roles or logged in status?


    • Sean

      Hi Luis,

      I’d be happy to help. Get in touch with me at sean-barton.co.uk/support and I’ll help you debug. It won’t be a hard one to fix.


  57. Richard Ginn

    A DIVI Display logic idea:

    Display a section, row, or module based on woocommerce product amount.

    If a product gets sold out the section, row, or module gets hidden.

  58. Faith Tilleray

    This could be the most amazing game changer for me if the Geolocation option is totally reliable. What did you mean in the video when you said that Geolocation is ‘always a bit funny?’
    I build sites for authors here in the UK whose US publishers often have different covers and even titles. If this plugin mean I can safely plan a whole site around using different sections to for US or UK users I’ll be in heaven. Planning an author site would be so much simpler in terms of layout and messaging.
    Can you confirm that your plugin is indeed as wonderful as I’m hoping it is?

    • Sean

      It is indeed. Geolocation is always based on IP address which, when running through a proxy or VPN, can easily be changed. This is what I meant by a bit funny. For all intents and purposes It’s safe to use and will be reliable for you.


  59. Mark Smith

    Hi Sean, is it possible to get a work around for W3 Total Cache. I love your plugin and would love it even more if it were possible to use it with page cache active.

    • Sean

      Hi Mark,

      No problem. Try this code in your theme functions.php file:

      add_action(‘dss_pre_dss_content_parse’, ‘rg_dss_pre_dss_content_parse_w3’);

      function rg_dss_pre_dss_content_parse_w3() {
      if (function_exists(‘w3tc_pgcache_flush_post’)){
      w3tc_pgcache_flush_post( get_the_ID() );

  60. John

    In case it is unclear, it is in the site backends that it is not activating, here in my marketplace account it is saying two sites activated, the two I am trying to get it active on and am unable to…… In the sites, in the plugin’s activation screen, it is saying in red letters “License NOT Active,” and then when I try to save the key an added message above the entry area saying as mentioned above; “A valid URL was not provided,” Even though here on the marketplace in my account it is saying both sites are active…

  61. John

    I purchased Divi Display Logic last evening… I am unable to get it to activate… It is saying “A valid URL was not provided.” I have tried it on two sites, both sites entered correctly where called for in the manage sites area… I have Divi/Extra Layout Injector installed on same two sites no problem, for a while now… Same sites entered same way… Key is right, no spaces, checked all obvious possibilities…

    • Andrew Palmer

      Hi John, the plugin is active and will work as normal, there is an issue with the license code the developer put in, we are awaiting a fix for this on the next update. The plugin will still work however. You will be informed of an update via email in this instance. Apologies for any confusion.

      • John

        Thanks Alex, I finally got around to looking and saw it was there… It is great to have these possibilities, with my thanks also to Sean…

        May I ask about something…? I mistakenly bought Divi/Extra Layout Injector twice… Forgot that I had bought it a few month prior for another site… It can be seen twice in my account… Any chance of a credit for something else here…? And totally understand if not…

        Kind regards,

        • John

          ooops, chagrin… ! Andrew… To many names today… Kind regards…

  62. Pierre

    Hi again Sean :).

    Thanks for your quick reply!

    I do not agree with you when you say “Caching normally means your server is cheap and slow”. Look at the ElegantThemes website ;)… I don’t think the get a low cost web server ;). For my part I use a cache plugin on every website I realize. The plugin I use on the most part of them is CometCache.
    I understand for the change of the Lifetime license model but I was so happy with it ;)…
    For the moment I have no more question ; but you know me my friend ;)…

    Have a great day, Sean 😀 !



    • Sean

      Bonsoir Pierre

      I kind of agree with you. I’m just not a fan of caching really. It gets scores down on pingdom etc but just causes problems for developers in most cases. I’ll have a look into comet cache for you and make sure to include a cachebuster line in the code somewhere which should help out.


  63. Pierre

    Hi Sean.

    Seems promising, but I have a few questions:
    Will it not slow down the server?
    Will it works with cache plugin? Or do we have to deactivate it to make your new plugin works?
    Is it an error or do you willingly change your lifetime license model :(?

    Thanks in advance for your precious answer.



    • Sean

      Hey Pierre,

      Thanks for the questions, I’ll gladly answer 🙂

      No it won’t slow down the server. This is simple php logic and it just clears a variable if access is not set. It’s very light indeed.

      Browser caching won’t effect this and nor will minification or that sort of thing. People who use heavy server caching may experience some oddities but then I don’t know of any plugin at all that doesn’t break under heavy caching. If you give me the name of the caching plugin you are using then I can provide some code for your child theme to clear it. I have some code already for WP Rocket which may be useful. As a rule I heavily recommend against caching sites. Caching normally means your server is cheap and slow. Caching just covers up that problem.

      The licensing model has changed because it’s something that EMP is doing across the board soon. The plugins are cheap and 50% discount on re-purchase in 12 months make it very cheap indeed. There comes a time where it’s not financially viable for me to continuously support plugins for a one off payment of $11 as it is at the moment. Remember also that the license isn’t to use the plugin.. you can use it as long as you want.. it’s for updates and support. I’ll always support where possible as you know and the updates are something which is run through EMP and will be subject to license. This will enable me to offer a better service and for a longer period of time.

      Happy to answer more questions if you have any my friend 🙂


  64. Ted

    Good idea! I enjoyed the video.
    Little typo on this page: “updates form the date of purchase” should be “from”

  65. Bruno Bouyajdad

    Hey Sean, something like this I was planing also. It seems that I need a new idea now. Congratulations ! I give it a try..

    • Sean

      Sorry about that Bruno. Perhaps in the future we should collaborate on something. Looking forward to seeing your next plugin 🙂

      • Bruno Bouyajdad

        Yes, we should do this ! I will release my new one in the next few days. I wish you success ! 🙂

  66. Chris

    Hi Sean,

    Looks great, I’ve been trying to get this done with an other plugin, but its kind of buggy on Divi.
    So very happy with this.

    I’m going to pick it up !!

    One question: will it also work on Extra ?

    • Sean

      Hi Chris,

      Thanks for the feedback. Glad you like it!

      Yes it should work with Extra as it’s based around the Divi builder rather than the Divi theme specifically. In fact it should also work with the Divi Builder plugin also 🙂


  67. Mark Smith

    Where do I find your specific contact information for this plugin support? I can’t see it in the documentation.

  68. haedworm

    Wow! Really impressive plugin Sean. Couldn’t wait to get my hands on this as it works so well with a simple event module I am working on.
    The ability to hide past events or show upcoming events is going to be really, really useful.

    • Sean

      Great thanks! Let me know how you get on and do let me know if you’d like it to do something in addition to what it does already 🙂

Submit a Comment


V1.0 - 13/7/17 - initial release V1.1 - 17/7/17 - Added dss_pre_shortcode_parse action to fire just before the logic is run on any shortcode. Also dss_pre_dss_content_parse which runs only when the dss_content shortcode is parsed (passing the $atts array). This will allow you to clear caches etc V1.2 - 30/7/17 - Fixed bug causing activating not to work V1.3 - 10/8/17 - Fixed logic requiring user to be logged in to work. V1.4 - 14/9/17 - Fixed reference to enqueue script which was incorrectly called as enqueue style. oops! V1.5 - 27/10/17 - Added 'show once' filters - Added timezone setting code to aid date related filters V1.6 - 03/11/17 - Fixed Auto Update functionality V1.7 - 19/02/18 - Added show/hide logic built in for the querystring ($_GET), post array ($_POST), session ($_SESSION) and cookies ($_COOKIE) - Show and Hide roles now support multiple roles rather than just the one show_role="subscriber,editor" hide_role="administrator,author" etc... V1.8 - 07/03/18 - Added user_show filter to support showing/hiding of content to user IDs specifically either individially or comma separated - Added hide_post_meta and show_post_meta filters to handle showing/hiding based on the current post/page custom fields V1.9 - 07/03/18 - The existing GeoIP system is now retired so this was replaced with another that works. Thanks to Ethan Lessiter for this fix V2.0 - 12/03/18 - Web based IP lookups for location were proving slow so replaced with a filebased system from Maxmind GeoIP V2.1 - 13/04/19 - Small fix to allow more than one GEO IP lookup to be performed on the same page. V2.2 - 15/08/19 - VB Ready functionality - Fixed updater script V2.3 - 12/01/20 - New Interface for the VB. Removed support for Classic Divi Builder - Added ability to set multiple items of logic instead of just the one - Added admin mode so administrators still see DDL controlled content but with subtly different styling to indicate the logic - Removed GeoIP files causing the plugin to be larger than 20mb. Now sites download the library in the background on activation instead. - Added ability to set logic on child modules such as pricing tables, sliders and tabs - Fixed Timezone offset function V2.3.1 - 12/01/20 - Fixed issue with geoip library inclusion - CSS issue with the theme builder, z-index increase - Added location caching to increase speed of lookup and to avoid repeating checking locations etc. V2.3.2 - 14/01/20 - Added new filter to add custom logic and helpers! Check the documentation site for more info on this. - Added 5 new ACF filters and helpers. Will show when the ACF plugin is turned on. - Added scope for cloudflare override for location lookup V2.3.3 - 16/01/20 - Fixed Fatal error caused by other plugins using the GeoIPlibrary. - Fixed styling issue on the Divi Theme Options page (jquery-ui issue - Updated Location code with a file exists for the GeoIP DAT file - Updated caching of GeoIP DAT file to handle plugin updates V2.3.4 - 17/01/20 - Converted remote storage of geoip files to use Amazon S3 - Remote copy of geoip files now uses a stream rather than memory as it was causing fatal errors in some cases - Added a PHP filter for the documentation info in the popup - Added ability to refer to roles by ID or Label in show_role and hide_role V2.3.5 - 20/01/20 - Refactored PHP to try and avoid fields clearing automatically. - Added JS console logging for debugging in future V2.4 - 19/02/20 - Added support for the Divi Theme Builder - Fixed issue with broken link to Magnific popup JS V2.5 - 16/05/20 - Added show_lang and hide_lang logic. show_logic="EN,FR" for instance or hide_logic="DE" V2.5.1 - 21/05/20 - Removed jQuery UI conflict on the Divi Theme Options page - Removed Scripts from outputting backend info on the front end V2.6 - 17/06/21 - Fixed show content at a certain time - Fixed hide content at a certain time - Fixed show and hide content between certain time - Fixed show content if user in particular city - Fixed hide content if user in particular city

Checkout the documentation first and if you still need help open a support ticket.

View Docs

You may install this product on any number of websites that you build for yourself or your clients. You will receive 6 months support and 12 months of updates from the date of purchase, after which you will have to purchase the product again at 50% of the initial purchase price.

*Support is provided by vendors directly.

Please login to access the support form. you can do so here