Show Bricks Elements Only to Logged-In or Logged-Out Visitors
Skips rendering any Bricks element with the CSS class "wpide-logged-in" for guests and "wpide-logged-out" for members, a quick alternative to setting conditions on each element.
Opens WPIDE on
Code
add_filter( 'bricks/element/render', function ( $render, $element ) {
if ( ! $render || ! is_object( $element ) || empty( $element->settings['_cssClasses'] ) ) {
return $render;
}
if ( function_exists( 'bricks_is_builder' ) && bricks_is_builder() ) {
return $render;
}
$classes = ' ' . $element->settings['_cssClasses'] . ' ';
if ( false !== strpos( $classes, ' wpide-logged-in ' ) && ! is_user_logged_in() ) {
return false;
}
if ( false !== strpos( $classes, ' wpide-logged-out ' ) && is_user_logged_in() ) {
return false;
}
return $render;
}, 10, 2 );
Notes
Add the class in the element's Style > CSS > CSS classes field (not a global class).
How to add this snippet
- Install WPIDE on your WordPress site (it is free) and open Code Snippets.
- Use snippet above adds it from the library in one click. Or copy the code into a new snippet with the same code type.
- It is added inactive: review the code and settings, then switch it on.