skip to navigation
skip to content 1.0a8

Theme Editor for Plone, Customize your theme resources through the web


The theme editor makes it possible to customize most aspects of a plone theme from a single location. After installation a new entry is added to the Plone “site setup” control panel called “Theme Editor.”

Using the themeeditor

  1. Log into your Plone site as a Manager
  2. Navigate to Site Setup
  3. Select Theme Editor

Reporting Issues

Visit and submit a ticket related to Theme Editor


If you are using zc.buildout and the plone.recipe.zope2instance recipe to manage your project, you can do this:

  • Add to the list of eggs to install, e.g.:

    eggs =
  • Re-run buildout, e.g. with:

    $ ./bin/buildout

Version Notes

You will need to pin newer versions of and as shown below:

versions = versions

[versions] = 1.1.2 = 1.2

Important: the versions noted here were correct at the time of release (Plone 3.3.5). It is likely that newer versions of Plone 3 will adopt the versions of and listed above. If your version of plone requires a newer version of or there is no need to pin them in the [versions] section.

Plone Versions between 3.1.x and 3.2.x

Versions of Plone before 3.3 do not use z3c.autoinclude so it is necessary to add a zcml entry in buildout

  • Tell the plone.recipe.zope2instance recipe to install a ZCML slug:

    recipe = plone.recipe.zope2instance
    zcml =


1.0a8 (2013-09-25)

  • Add 4.3-compatability (fix popups and export) [pbauer]

1.0a7 (2012-09-28)

  • Added missing dependency [do3cc]

1.0a6 (2012-09-28)

  • Use templer for egg creation [do3cc]
  • update so that z3c.autoinclude works [do3cc]

1.0a4 (2011-09-13)

  • Updated some imports to work with Zope 2.13 [pbauer]
  • Fixed broken customization js code [do3cc]
  • New jquerytools do not allow fields with name submit. Now mangling forms to change that name [do3cc]
  • Updated js code to datastructure changes introduced in p.a.jquerytools [do3cc]


  • Add french translation [toutpt]
  • Fixed broken export for resources that were identified as ‘zopeview’ [pigeonflight]


  • fixed an error that was causing exports to work only once in a single session [pigeonflight]
  • created a templates directory and moved all the .tmpl template from the browser directory to the templates directory, updated the browser/ form code to grab templates from the new location [pigeonflight]
  • fixed the popup export form (removed formselector in themeeditor.js) so that the theme actually downloads [pigeonflight]
  • added validator to checks to see that themes are named with proper dotted named [pigeonflight]
  • ensure that themeeditor doesn’t break if the active theme declares nonexistent filesystem skin folders [pigeonflight]
  • removed redundant file [pigeonflight]
  • update tests including a windmill based test of the exporter [pigeonflight]
  • the export form now shows up in a popup window with instructions [pigeonflight]
  • updated the TODO.txt [pigeonflight]
  • added an export button to the UI [pigeonflight]
  • bumped version [pigeonflight]
  • the exporter now “cleans up” after itself and removes temp files [pigeonflight]
  • refactored the way the jbot.zcml file is generated [pigeonflight]
  • the export view now generates a theme egg as a downloadable tarball [pigeonflight]
  • now writes jbot templates and directory view resources [pigeonflight]
  • The themes that are generated now have z3c.autoinclude in their and lists
  • generated from export now writes the author and author_email [pigeonflight]
  • added (borrowed from qPloneSkinDump product) for writing cmfskins resources [pigeonflight]


  • removed [plone3] extra from [davisagli]
  • fix the windmill test replaced an xpath selector with a jquery selector [davisagli]
  • more i18n fixes [davisagli]
  • fix test assertions re translated strings; add a missing translation [davisagli]
  • removed include from browser/configure.zcml [pigeonflight]
  • removed all patch related code [pigeonflight]
  • added an export form view currently only writes a generic zopeskel theme to a temporary directory [pigeonflight]
  • dropped dependency and collective.monkeypatcher will introduce this when we start working on export via zopeskel [pigeonflight]
  • removed browser/ (will work on this in the zopeskel branch [pigeonflight]
  • removed the use of collective monkey patcher [pigeonflight]
  • extended the ‘extras_require’ to included a [plone3] section [pigeonflight]
  • added new README information and a docs/INSTALL.txt explaining how to install noting the use of the [plone3] extra for Plone 3. [pigeonflight]
  • Renamed to (was [pigeonflight]
  • Added a link to the themeeditor in site actions via actions.xml [pigeonflight]
  • Adjusted the html in as it did not validate (a tag should not contain dt tag) [pigeonflight]
  • updated css to work with the new structure of [pigeonflight]
  • replaced the use of p tag with span for the resource descriptions p tags are not allowed within dd or dt tags [pigeonflight]
  • appended a number from the tal repeat to the end of each resource id to ensure that all resource items get a unique id [pigeonflight]
  • fixed code on, and so that it works with older versions of customerize (i.e. initial fixes towards Plone 3 compatibility) [pigeonflight]
  • patched for performance if the version is older 1.1.3 used collective.monkeypatcher (this should improve performance of theme editor on Plone 3) [pigeonflight]
  • using collective.monkeypatcher preconditions parameter didn’t seem to work used a zcml:condition instead to select for Plone 3 and apply the patch [pigeonflight]
File Type Py Version Uploaded on Size (md5) Source 2013-09-25 83KB