Skip to content
● Grav 2.2 is out: 2x faster cold starts and 96% less memory on big sites. Read the announcement →

Use the taxonomy value as classname for styling

Solved by hughbris View solution

Started by lesabu 9 years ago · 2 replies · 787 views
9 years ago

Hi, i am using taxonomies to categorise my content. Now I would like to style each category differently. so lets say all posts with 'taxonomy: category: - apple' have a green background. And all 'taxonomy: category: - berry' have a red background.

How can I use the category name as a class for styling?

I tried in de base.thml.twig:
<body class="{{ page.header.taxonomy.category }}">

but that doesnt work 😭

How do I do this?

Thanks for help!

👍 1
9 years ago Solution

Great idea, you just have the Twig expression slightly wrong. I had to check in the docs for the correct expression, so don't feel bad 🙂

page.taxonomy.tag would work, but it's an array because you can have more than one term. If you know there's always one, try page.taxonomy.tag|first. Otherwise you need to compile a delimited string of classnames composed from each term: page.taxonomy.tag|join(' ') should do it.

👍 1
9 years ago

ooh 😱 I think thats it what I mean! Thank you!!

I am new to grav/programming and I think I need to check these theme variables a bit more. they seem quite – cool ;)

👍 1

Suggested topics

Topic Participants Replies Views Activity
Themes & Styling · by FrViPofm, 4 weeks ago
4 472 2 weeks ago
Themes & Styling · by johan thomas, 5 years ago
1 799 3 weeks ago
Themes & Styling · by stuart young, 2 months ago
3 657 2 months ago
Themes & Styling · by Sebadamus, 3 months ago
5 678 2 months ago
Themes & Styling · by martynfoster735, 3 months ago
1 641 3 months ago