Ticket #20154 (new PLIP)

Opened 16 months ago

Last modified 16 months ago

example theme to ship with plone which isolates the CMSUI from public theme

Reported by: djay Owned by: vangheem
Priority: minor Milestone: 5.0
Component: User Experience and Interface Version: 4.4
Keywords: Cc:

Description (last modified by jcerjak) (diff)

Proposer: Dylan Jay Seconder: Jure Cerjak

Abstract

Ship with plone 5 an example theme which demonstrates how to create a theme which provides a nice editing experience with minimal integration of plones internal css/js with the public facing theme. Some changes to core plone are expected in order to make the example theme simpler and robust over time.

Motivation

Sometimes you need to work with a theme in the form of html/css/js that wasn't designed with plone in mind such as converting an existing site, purchased themes, or working with designers unfamiliar with Plone. For many sites the additional work is not worth it: testing all parts of the plone UI, styling to ensure tinymce and other dialogs look nice and work well with your theme etc. Providing an example theme that ships with Plone provides an optional way to develop such a theme should the end user wish.

Assumptions

Proposal & Implementation

  1. Create a new bundle in CMFPlone which contains just the minimum needed for the toolbar and public facing forms such as contact, advanced search etc (although providing a smaller bundle still and disabling those might also be possible)
  2. add a new body class tag in plone templates called "ploneui" for all views which form part of the plone UI such as edit, history view, site setup etc.
  3. Create plonetheme.cmsui which has two mockup html files, theme.html and ploneui.html. A rule file will help separate requests for ploneui views vs themed views as well as set which bundles are used for each.
  4. Users will create a copy of plonetheme.cmsui, overwrite the theme.html, include any css/js they want and continue adding rules normally to integrate their theme without worry much about ploneui conflict.

Deliverables

Risks

May not be easy to get all thirdparty plugins to include the body class tag in views which are part of the plone UI. Examples will be used to show how to explicitly allow these pages to be themed as plone ui instead of the public theme.

Participants

Dylan Jay Jure Cerjak

Progress

A proof of concept theme has been created  https://github.com/collective/plonetheme.cmsui It uses knowledge which views form part of the ploneui. This will be replaced with a ploneui body class tag.

A branch of CMFPlone exists with the minimal bundle ( https://github.com/plone/Products.CMFPlone/tree/plonenonui)

Change History

comment:1 Changed 16 months ago by djay

  • Description modified (diff)

comment:2 Changed 16 months ago by jcerjak

  • Description modified (diff)
Note: See TracTickets for help on using tickets.