Skip to main content

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

Project description


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]

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 (85.3 kB view hashes)

Uploaded Source

Supported by

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