Complex layouts?

Hi Folks,

Do you have plans to enable complex page layouts to be built?

Thanks,
Steve

Hi @insightdes! Could you please expand on what you mean by ‘complex layouts’, any examples?

Yes!

So, multi-column layouts is the main query.

Cheers.

Also, rows with full width or container-ed widths.

@insightdes in which part of the system do you mean these features?

If it comes to Ghost frontend there’s a lot of themes available https://marketplace.ghost.org/, they allow you for any type of layout and you can modify them as you wish for your own purposes :)

I mean in the page content. Can I create a page with a complex page layout regardless of the theme?

Do the themes in the marketplace allow you to create a page with a complex page layout?

Or do the complex layouts you refer to refer to the header/footer/sidebar/blog posts sections.

@insightdes you can create as complex layouts as you want with your own templates and use data available in Content API through for example {{#get}} helper or using data from Dynamic Routing. The theme layer is just a set of handlebars templates which you can arrange/nest as you wish.

Complex layouts is rather broad term, maybe I could help you more if you have some concrete example :)

Hi @naz,

Can we create a general content region in the template which is where the page content goes, and then fill that content region with a complex layout using the page editor?

By complex layout I mean something like https://websites.insightdesign.com.au/handyman/

I am hoping to be able to build a different complex page content for several pages.

Cheers,
Steve

Can we create a general content region in the template which is where the page content goes, and then fill that content region with a complex layout using the page editor?

@insightdes Ghost’s editor is a content editor, not a site/page designer. There is no layout feature other than what you manually code in your template files with html/css/handlebars.

As @naz said above, if you need blocks of editable text content then you could use the {{#get}} helper to fetch specific posts/pages and insert their content into your template file. If you go that route it would be worth reviewing the routing docs so that you can exclude those posts/pages from appearing as individual pages on your site.

2 Likes