Skip to main content

A block approach for Plone 6 Classic

Project description

collective.contentsections

This product offers a block approach for Plone 6 Classic based entirely on Dexterity content types. It is largely based on the code that was developed in the imio.smartweb.core product for the Walloon municipalities.

The approach in this product can be seen as a generalisation of the Full content view available in Plone on Folder content type.

The plone site is seen as a folder hierarchy that contains pages. A page is a folderish content type composed of sections. A section can contain elements of the same type (File, Image, Link). Folders, pages, sections and elements are all Dexterity content types.

The section view view redirects to its position in its parent page view view. Section content types are hidden from research but their contents are indexed in the SearchableText index of their parent page.

Images and files are seen as elements. Images are only available in images sections and as lead image in all content types. Files are only available in files sections. Links are sometimes seen as elements of the links section and sometimes as redirect pages.

Features

This product provides :

  • basic schema and class for section content types
  • LeadIcon vocabulary and behavior based on plone.icons registry records
  • TextSection wich contains a simplified TinyMCE field and the behavior LeadImage. A TextSection contains only the lead image. No more image in TinyMCE text field.
  • HTMLSection to integrate iframe from youtube, google map and other iframe providers. No more video, iframe in TinyMCE text field.
  • CollectionSection to link a section with a collection.
  • SelectionSection to link a section to other pages. The SelectionSection replace the Related items behavior.
  • CardsSection content type based on a collective.z3cform.datagridfield field to make nice information blocks/links on a page
  • ImagesSection, LinksSection, FilesSection folderish section content types to keep the site structured and facilitate the cup and paste of sections between pages.
  • A Page view for folderish content types
  • BasicPage, EventPage page content types

This product also provides a prototype of row configuration for when the editor wants multiple sections on the same row. It is inspired by the Fieldset separator concept used in PloneformGen. However, this prototype breaks the simplicity of editing and probably requires a refactoring or a switch to Volto :-)

This product fits Plone with:

  • top position for Toolbar position
  • use accordion instead of tabbing for edit forms
  • new image sizes
  • a new default page name index
  • LeadImage on File and Link content types
  • a profile to simplify TinyMCE interface

Installation

Install collective.contentsections by adding it to your buildout:

[buildout]

...

eggs =
    collective.contentsections

and then running bin/buildout

Development

make install
make start

Demo content

The file https://github.com/sverbois/collective.contentsections/blob/main/demo.json contains some demo pages that can be loaded into the site using the @@import_content view of the collective.exportimport product. collective.exportimport is installed on the developement environment. You have to hide Plone Leftcolumn and Plone Rightcolumn portlets on your site to display the pages correctly.

TODO

  • Tests, Tests, Tests
  • Try to use RelationChoice in CardsSection but problem with RelationChoice field in DataGridField required a fallback to UUID StaticCatalogVocabulary
  • A FormSection based on Easyform ?
  • A focal point feature behavior activated on LeadImage

Previews

Preview 1

Preview 2

Preview 3

Contributors

Changelog

1.0.0a4 (2021-12-19)

  • Add tags information in section view which contains context subjects field value [sverbois]
  • Clean up the list of behaviours on content types [sverbois]
  • Don't hide contentleadimage viewlet [sverbois]

1.0.0a3 (2021-12-18)

  • Add a demo.json export of collective.exportimport with demo pages [sverbois]
  • Clean use of default and missing_value field attributes [sverbois]

1.0.0a2 (2021-12-17)

  • Add Event Page portal type [sverbois]

1.0.0a1 (2021-12-17)

  • Initial release [sverbois]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

collective.contentsections-1.0.0a4.tar.gz (49.7 kB view details)

Uploaded Source

File details

Details for the file collective.contentsections-1.0.0a4.tar.gz.

File metadata

  • Download URL: collective.contentsections-1.0.0a4.tar.gz
  • Upload date:
  • Size: 49.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.9.0 pkginfo/1.8.2 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for collective.contentsections-1.0.0a4.tar.gz
Algorithm Hash digest
SHA256 600f0f507867860ad2d8d03fd2f802e7e187e170102faed1ac01fa5d2a8071ff
MD5 4906588305878ca46e7843f1a9cac63d
BLAKE2b-256 7630aefd850091252888b7b6502fd5bd9fcc51ba6999450acfe487d430de0203

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page