volto
volto copied to clipboard
Listing/Search Block Variants for Page/News Item/Event/File
PLIP (Plone Improvement Proposal)
Responsible Persons
Proposer: Timo Stollenwerk
Seconder:
Abstract
Currently Plone ships with the following listing/search block variants:
Create new listing block variants that show the following content objects:
- page
- news item
- event
- file
in a different way (tbd).
Listing Block Variants:
- List (rename existing variant "Default" to "List") - ID: list
- List with images (rename existing variant "Summary") - ID: list_with_images
- Grid (2 columns) (rename "Grid" to "Grid (2 columns)") - ID: grid_2_columns
- Grid (3 columns) - ID: grid_3_columns
- Grid with images (2 columns) - ID: grid_with_images_2_columns
- Grid with images (3 columns) - ID: grid_with_images_3_columns
Items render based on the content type:
- Page (title, description, image)
- News (title, description, image, effective_date)
- Event (title, description, image, start_date, end_date)
Motivation
Assumptions
Proposal & Implementation
Deliverables
Risks
Participants
Notes Beethoven Sprint 2023:
Listing Block Variants:
- List
- List with images
- Columns -> Grid
- Columns with images -> Grid with images
We should avoid using “Default” as an option, since it doesn’t really explain/describe the actual view.
Remember to use the same grammatical category inside the same options group. (Standard and Grid don’t work together, since the first one is an adjective and the second one a noun.)
@danalvrz since you stepped up to work on this at Beethoven Sprint, if I recall correctly, I was wondering if you could imagine putting this on the agenda for the upcoming Axolote Sprint? cc @davisagli @sneridagh @ericof
@tisto We need to discuss how to handle backwards compatibility for existing listing and search blocks.
Just a note that an alternative is replacing the listing block with the more flexible idea of a repeater block ( half of #4478). The variation for the listing are just the arrangement, ie grid, vs list. But instead of variations for how each item is rendered, instead a real block type is selected and each item is rendered as a block. (but not blocks that can be added or removed. read-only blocks). For example the teaser block or a card block could be what is repeated. This means the integrator has to do far less work creating variations for listing blocks, and instead can just change a setting to say which of the custom block types should be able to be selected as repeatable (and what listing metadata will get mapped to which repeatable block field). And all the work going into creating variations for that teaser block then get to be reused on the listing/repeater block without effort.
@djay thanks for the pointer. I get the idea of re-using existing rendering options we have instead of creating new ones. I think this is beyond the scope of this PLIP.
From my comment https://github.com/plone/plone.de/issues/59#issuecomment-2109427033, I suggested to amend the Event to include the following:
- event start time with time zone
- event end time with time zone
- location (text, such as city, state, and country, URL to a map service or online meeting service, or longitude and latitude)