Plone Theming: Unique page layouts depending on page?

Hello all. I am new to Plone and am attempting to create a custom theme. I am used to developing on Wordpress and am wondering if it is possible to create pages using a different layout depending on where you are in the site (for example, a unique front page design that is different then the rest of the pages on the site).

I am currently reading through the official documentation, as well as the documentation on training.plone.org, however ?I haven't found any information about this yet. Any help or links to resources about this would be much appreciated, thanks!

Hi and welcome to Plone!

You can use conditions in your theme if you know the paths: https://docs.plone.org/external/plone.app.theming/docs/index.html#available-rules

<theme href="theme.html" /> <!-- Default theme -->
<theme href="news.html" if-path="/news" /> <!-- Custom theme for /news -->
<theme href="frontpage.html" css:if-content="body.portaltype-plone-site, body.section-front-page" /> <!-- Custom theme for Plone homepage -->

The last rule applies to all content with type plone-site (which usually is only the root of your website) and a document (section) with id front-page (which is the default Homepage document). If you use another one as your homepage, e.g. homepage, it would be body.section-homepage. But you can see it from the generated HTML markup. Also, if you have a custom template in Plone applied, you could check on that too:

<theme href="frontpage.html" css:if-content="body.template-mytemplate" /> <!-- Custom theme for a template. -->
1 Like

Oh, one more link: http://docs.diazo.org/en/latest/basic.html

Thank you very much for the reply. I'll read through this and give it a try!