Did Webflow change how it handles conditional visibility?
It was my understanding that Webflow only serves the HTML of a page that is set to be visible. Meaning, elements which use conditional visibility to be hidden shouldn’t be served.
I use conditional visibility to serve a user different layouts and elements depending on toggles and settings in the CMS.
I notice that when I view my pages in dev tools there is now a class called “w-condition-invisible” and it’s setting that element to display none. Meaning it’s serving the full page and using display none to hide after the fact.
This would seem to be bad from a page loading speed perspective as well as from an SEO perspective.
I don’t remember ever seeing this? Is this a recent change?
Nope. This is how they have been doing it as far back as I can remember. You have to take this into consideration when building pages where SEO is important.
It has 2 CMS collections. A collection of podcasts (where only FREE = TRUE is selected) and in the footer, a group of blog items (where SHOW IN FOOTER = TRUE). The blog items are all in the page, but the ones where SHOW IN FOOTER = FALSE have the condition w-condition-invisible.
@maxjoles have you managed to find a way around it?
@maxjoles do you have an understanding of the impact this has on SEO? I wanted to link to my highest intent blogs from the homepage, and assume that webflow handling hiding CMS items like this now splits the link juice along every one of them