Built In Customize Theme feature on a Page Type Basis?

Permalink
In 5.7+ the new built in Customize Theme feature (for themes that have implemented this functionality) really ROCKS in comparison to how it used to be.

However, I'm wondering if I will need to customize the theme manually to pull off the following (which I was hoping I could do using the Customize Theme feature)

When you do a customization, it asks if you want to apply the changes to the entire site, or just this page. Easy enough. But I started using some different colors for different areas of the site. So a different header background color for each section for instance. So far so good.

Then I realized that new pages in the blog section, or the portfolio section, or any section with sub-pages (where I'd want the sub-pages to all use the same color as the parent page) all get the default color (or whatever customization I applied to the entire site, before applying individual changes to different sections).

No problem... or so I thought. I figured I could go to create a Page Type for each section, and go into Page Type Defaults like you did in 5.6, and make the customization changes there, and all new pages of that type would get that sections color.

Unfortunately, I can't find any way to use the new Customize Theme feature on a Page Type Default, at least not at /dashboard/pages/types .
It's all "Composer Like" there. Is there any way to edit the defaults for a page type on an actual page like in 5.6, where I could do this?

Or what?

Side Note: It's unclear (to me anyway) if when you do a customization, and it asks "Do you want to apply THIS CUSTOMIZATION to the entire site or...", if you select "The Entire Site", will it apply Every Setting on that page to the entire site, or if you only changed one thing (such as a header background color), will it apply only that change the entire site?

OKDnet
 
jordif replied on at Permalink Reply
jordif
Hi!

you can edit some of the page type defaults by going to Dashboard > Pages & Themes > Page Types. If you click on the "Output" button next to the Page Type, you should be able to edit the page type and add default blocks (like in concrete 5.6). But as far as I know, I'm afraid you can't use the Theme Customizer on a Page Type (someone correct me if i'm wrong!).

I agree that could be very useful and provide much more control. Not sure how hard it would be to include this functionality in future versions of concrete 5.7.

What you can do as a workaround is to use the CSS classes that are applied to the container DIV around the content in the page. Every page gets a CSS class with the name of its page type. If you have a look at the source code for any page, you should see a CSS class such as "page-type-blog-entry" added automatically to the container DIV.

So you could add some custom CSS to change the header background for that page type, for instance:

.page-type-blog-entry .site-header {
   background-color: red;
}


Sure, that requires some CSS knowledge, and using the Theme Customizer would be much easier, but it might help in the meantime.

Regards,

Jordi
OKDnet replied on at Permalink Reply
OKDnet
Ah, thanks Jordi.
I didn't see that every page gets a CSS class with the name of its page type. That certainly is easy enough now that you pointed it out. Definitely better than using the built in tool, at least for more complex customization.