Group specific Banner Topics?

(Joe Buhlig) #1

I have a situation where I want to display different Banner Topics dependent on the users group membership. Namely, I’d like to show one banner if a user isn’t logged in and a different one if they are but aren’t a part of a specific group.

I could likely set up categories to target the two sectors but is it possible to target users with specific Banner Topics? I’d rather not build a customization to do it but I’m also not tossing that idea.

I saw how to hide a banner from anonymous users, but not how to show two different banners.

(Sam Saffron) #2

I worry that this would be extremely confusing from an admin perspective. I would need a completely new UI to support configuring this without enormous amounts of admin confusion.

One hacky possibility with minimal change would be to have one big banner for everyone and then use CSS to hide bits.

(Joe Buhlig) #3

That was my concern as well. It would be a pain to manage as an admin. I just wondered if it was even possible.

I may give this a try as it seems much quicker and easier than building the full customization via plugin. But last I knew, we couldn’t apply CSS classes or ids via the composer. Outside of using an nth-selector, is there another way to do this?

(cpradio) #4

I know you can do it for anon versus logged in, but I’m not sure you can achieve it via Groups. As to my knowledge there is no high-level (on the html or body tag) CSS class denoting the group the user is a part of.

(Sam Saffron) #5

Yeah it is not going to be easy, nth selector is what you are going to be forced to use. Otherwise you are going to be forced to whitelist stuff for everyone.

(Joe Buhlig) #6

Thanks, @sam and @cpradio. I think my plan of attack will be to add the group names to the body/html classes and follow down to the nth div of the banner topic. :thumbsup:


Are you going to use :nth-child () selector?

But how to add group names to the body/html classes? Can you give me an example?

(Joe Buhlig) #8

Ended up going a different route entirely. I built a custom theme that inserts the pieces I need as a header. The theme did all the work I needed.