MukurtuCMS / Mukurtu-CMS

Mukurtu CMS v4 Development
20 stars 2 forks source link

Landing / home page blocks for layout builder #180

Open michael-wynne-wsu opened 9 months ago

michael-wynne-wsu commented 9 months ago

@eckmo I'm not sure what blocks are currently available in the codebase. @nick-deer will likely need to create some of these (at least placeholders) unless that's something you're willing to do.

  1. Hero/welcome (Already underway!)
  2. Featured content (Users can promote content of any type to the front page. V3 only allows 3 pieces of content, but we have requests to expand that - my first thought is a carousel.)
  3. Browse by community
  4. Browse by category
  5. Map browse (Does not exist in v3, the one shown below is a repurposed map view, attempting to recreate https://ewatlas.net/)
  6. Formatted text (People want to add all sorts of random things, like an audio welcome https://passamaquoddypeople.com/ or longer text welcome below the big hero, or Local contexts information https://aboriginalarchivesitaly.com/, maybe embed a timeline or something. But the ability to add "do what you want" blocks.)

I know that's pretty open ended still, let me know how you want to get more info.

1-5 are all visible in a version 3 site. Mukurtu-Demo

michael-wynne-wsu commented 7 months ago

Closing notes from Steve about Layout Builder:

pjudge commented 4 months ago

Just to update this ticket -- LB doesn't work with Default Content so shipping with LB would be a challenge as there would be no prepopulated content. Paragraphs is an option. Custom module is an option (for being able to choose which blocks are enabled/disabled). Entity reference fields may provide some flexibility, but possibly not enough.

michael-wynne-wsu commented 4 months ago

Just so that I understand, is the lack of pre-populated content an issue just because there can't be an included hero image?

Could we have a text message with default text - if so that might be enough to offset the lack of an image.

Mostly I don't want to discard LB if it's still going to be the best option for actual use, setting aside the initial install.

pjudge commented 4 months ago

@michael-wynne-wsu I'm thinking on this more and wish I had more time to do further digging. Apologies for this being sidebar-d while other issues were worked on. The basic functionality of Layout Builder is that the site builders define the layout of the page (the areas in which content can be placed) and then users can choose to place available blocks.

Since you can export/ship config for the layouts themselves, but not content, that would look like an empty homepage in which a user would have to go to the Layout tab and place the blocks they want in the areas they want. I think the blocks can be programmatically created so that they appear available to the user, but they won't be placed anywhere on the homepage until the end user does it.

My thought is that v4's requirements could be fulfilled using entity reference fields... but I think it would involve both front and back end. I'm not 100% sure of all possible pitfalls with this idea but if I had more time, this is the next direction I would go in. A multivalue entity reference field gives users the ability to add/remove and rearrange by dragging items into a different order on the form display.

Handoff note: This ticket is related to https://github.com/MukurtuCMS/Mukurtu-CMS/issues/240. If entity reference fields don't work, and the limitations of Layout Builder as described above don't seem right either, then I would suggest Paragraphs as another option, but again... some research would need to be done into whether Paragraphs works with default content.