Hello there,
I’m new to Jekyll and have a question. How do I integrate multiple themes so that parts of the website look different depending on a condition setting
Welcome to Jekyll. I was in a similar situation. [I started with several hundred html pages that were in DreamWeaver.] It took me quite a while, and I ended up using no theme at all. Rather adding all I needed from “minima” to my Jekyll setup at various places, and for the different “themes” I use different layout files (which, in turn, use different CSS files amongst other differences).
In fact, to learn Jekyll, I would find it helpful to start w/o any theme. I’m probably slow, but it took me several months to come even close to what I wanted.
Agree. Look at the step by step guide on how to add html to a site with no theme
And start another project using
jekyll new my-site
If you have Jekyll in your current project, you can use that make another project
bundle exec jekyll new ../my-site
You will end up with a site that uses minima theme
Jekyll doesn’t let you mix themes but you can override HTML in your project or add CSS.
For example you could setup a page layout and a post layout, where the one uses
<div class="purple">
{{ content }}
</div>
And the other uses say class="blue"
.
Or maybe you change what logo or navbar appears based on the page path or some collection. Using layout is the more natural path but you can use if statements too in a layout or includes file.
And you just need one CSS file for your whole site and you opt in to styles based on your class or whatever.
The theme comes with it’s own CSS but you can add your own CSS without replacing the base.
If a section of your site is vastly different in content or styling from the rest of the site, ask yourself if you actually do indeed want to split it into two sites. They can even use minima as their theme and then you can override say primary CSS color and use of font in each project.