The goal of plone.app.toolbar is to provide an even easier way to theme Plone by creating managing toolbar inside iframe.
This package should be safe to install and easy to uninstall (there is also uninstall profile). That means its fairly safe to give it a try, but just in case don't forget to create backup before testing it.
This project will be integrated with Plone 5 and will never reach version 2.0.0. You can monitor progress of PLIP here.
For now only tested with latest Plone 4.3:
[buildout] extends = http://dist.plone.org/release/4.3-latest/versions.cfg https://raw.github.com/plone/plone.app.toolbar/master/versions.cfg versions = versions parts = instance [instance] recipe = plone.recipe.zope2instance user = admin:admin http-address = 8080 eggs = Pillow Plone plone.app.toolbar
Make sure you install the "Plone Toolbar" profile when creating your Plone site or include plone.app.toolbar:default profile in your metadata.xml..
First we need to copy the toolbar's HTML code:
<before theme-children="/html/body" content="//div[@data-iframe='plone-toolbar']" />
Then, in case we are not copying all resources from Plone (content) into the theme we have to include the toolbar's resources and its dependencies as well:
Also, in order to correctly support updating a page after using Edit, you must ensure that the element #portal-column-content exists within your theme. In short, as with Plone's default theme, this element should correspond to the main content column. It will be repopulated with updated content after an edit action takes place via the toolbar. A rule similar to this is needed - in this case, the entire element is placed into the theme:
<replace css:theme-children="#content article" css:content="#portal-column-content" />
For the technically minded, the element of #portal-column-content will be repopulated with HTML corresponding to the same element ID from a response body returned after an edit takes place.
The above rules and consideration should be enough so that your theme will support plone.app.toolbar.
For any feature / bug / comment please create an issue in the issue tracker.